Hello community,
here is the log from the commit of package python-PyOgg for openSUSE:Factory checked in at 2019-04-08 20:52:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-PyOgg (Old)
and /work/SRC/openSUSE:Factory/.python-PyOgg.new.3908 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-PyOgg"
Mon Apr 8 20:52:55 2019 rev:4 rq:691780 version:0.6.9a1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-PyOgg/python-PyOgg.changes 2019-03-05 12:24:57.132848193 +0100
+++ /work/SRC/openSUSE:Factory/.python-PyOgg.new.3908/python-PyOgg.changes 2019-04-08 20:52:57.474542893 +0200
@@ -1,0 +2,6 @@
+Fri Apr 5 11:01:07 UTC 2019 - Tomáš Chvátal
+
+- Update to 0.6.9a1:
+ * no upstream changelog
+
+-------------------------------------------------------------------
Old:
----
PyOgg-0.6.7a1.tar.gz
New:
----
PyOgg-0.6.9a1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-PyOgg.spec ++++++
--- /var/tmp/diff_new_pack.CgRjK4/_old 2019-04-08 20:52:58.702543794 +0200
+++ /var/tmp/diff_new_pack.CgRjK4/_new 2019-04-08 20:52:58.722543809 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-PyOgg
-Version: 0.6.7a1
+Version: 0.6.9a1
Release: 0
Summary: Python bindings for Xiphorg's Ogg Vorbis, Opus and FLAC
License: BSD-3-Clause
++++++ PyOgg-0.6.7a1.tar.gz -> PyOgg-0.6.9a1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/PyOgg-0.6.7a1/PKG-INFO new/PyOgg-0.6.9a1/PKG-INFO
--- old/PyOgg-0.6.7a1/PKG-INFO 2019-03-01 11:42:07.000000000 +0100
+++ new/PyOgg-0.6.9a1/PKG-INFO 2019-04-01 13:24:28.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: PyOgg
-Version: 0.6.7a1
+Version: 0.6.9a1
Summary: Xiph.org's Ogg Vorbis, Opus and FLAC for Python
Home-page: https://github.com/Zuzu-Typ/PyOgg
Author: Zuzu_Typ
@@ -162,4 +162,5 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/PyOgg-0.6.7a1/PyOgg.egg-info/PKG-INFO new/PyOgg-0.6.9a1/PyOgg.egg-info/PKG-INFO
--- old/PyOgg-0.6.7a1/PyOgg.egg-info/PKG-INFO 2019-03-01 11:42:07.000000000 +0100
+++ new/PyOgg-0.6.9a1/PyOgg.egg-info/PKG-INFO 2019-04-01 13:24:28.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: PyOgg
-Version: 0.6.7a1
+Version: 0.6.9a1
Summary: Xiph.org's Ogg Vorbis, Opus and FLAC for Python
Home-page: https://github.com/Zuzu-Typ/PyOgg
Author: Zuzu_Typ
@@ -162,4 +162,5 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/PyOgg-0.6.7a1/pyogg/__init__.py new/PyOgg-0.6.9a1/pyogg/__init__.py
--- old/PyOgg-0.6.7a1/pyogg/__init__.py 2018-12-22 09:29:31.000000000 +0100
+++ new/PyOgg-0.6.9a1/pyogg/__init__.py 2019-04-01 12:56:00.000000000 +0200
@@ -27,54 +27,45 @@
if (PYOGG_OGG_AVAIL and PYOGG_VORBIS_AVAIL and PYOGG_VORBIS_FILE_AVAIL):
class VorbisFile:
def __init__(self, path):
- error, vf = vorbis.ov_fopen(path)
+ vf = vorbis.OggVorbis_File()
+ error = vorbis.libvorbisfile.ov_fopen(vorbis.to_char_p(path), vf)
if error != 0:
raise PyOggError("file couldn't be opened or doesn't exist. Error code : {}".format(error))
- info = vorbis.ov_info(vf, -1)
+ info = vorbis.libvorbisfile.ov_info(vf, -1)
self.channels = info.contents.channels
self.frequency = info.contents.rate
- array = (ctypes.c_char*32768)()
+ array = (ctypes.c_char*4096)()
buffer_ = ctypes.cast(ctypes.pointer(array), ctypes.c_char_p)
- self.buffer = b""
+ self.buffer_array = []
bitstream = ctypes.c_int()
bitstream_pointer = ctypes.pointer(bitstream)
while True:
- new_bytes = vorbis.ov_read(vf, buffer_, 32768, 0, 2, 1, bitstream_pointer)
+ new_bytes = vorbis.libvorbisfile.ov_read(vf, buffer_, 4096, 0, 2, 1, bitstream_pointer)
- array_ = ctypes.cast(buffer_, ctypes.POINTER(ctypes.c_char*32768)).contents
+ array_ = ctypes.cast(buffer_, ctypes.POINTER(ctypes.c_char*4096)).contents
- if self.buffer:
- self.buffer += array_.raw[:new_bytes]
- else:
- self.buffer = array_.raw[:new_bytes]
-
- del array_
+ self.buffer_array.append(array_.raw[:new_bytes])
if new_bytes == 0:
break
- del array
-
- del buffer_
-
- del bitstream
+ self.buffer = b"".join(self.buffer_array)
- del bitstream_pointer
-
- vorbis.ov_clear(vf)
+ vorbis.libvorbisfile.ov_clear(vf)
self.buffer_length = len(self.buffer)
class VorbisFileStream:
def __init__(self, path):
- error, self.vf = vorbis.ov_fopen(path)
+ self.vf = vorbis.OggVorbis_File()
+ error = vorbis.ov_fopen(path, self.vf)
if error != 0:
raise PyOggError("file couldn't be opened or doesn't exist. Error code : {}".format(error))
@@ -91,17 +82,14 @@
self.bitstream = ctypes.c_int()
self.bitstream_pointer = ctypes.pointer(self.bitstream)
- del array
-
self.exists = True
- def clean_up(self):
- del self.buffer_
-
- del self.bitstream
-
- del self.bitstream_pointer
+ def __del__(self):
+ if self.exists:
+ vorbis.ov_clear(self.vf)
+ self.exists = False
+ def clean_up(self):
vorbis.ov_clear(self.vf)
self.exists = False
@@ -110,28 +98,28 @@
"""get_buffer() -> bytesBuffer, bufferLength"""
if not self.exists:
return None
- buffer = b""
+ buffer = []
+ total_bytes_written = 0
while True:
- new_bytes = vorbis.ov_read(self.vf, self.buffer_, PYOGG_STREAM_BUFFER_SIZE*self.channels - len(buffer), 0, 2, 1, self.bitstream_pointer)
+ new_bytes = vorbis.ov_read(self.vf, self.buffer_, PYOGG_STREAM_BUFFER_SIZE*self.channels - total_bytes_written, 0, 2, 1, self.bitstream_pointer)
array_ = ctypes.cast(self.buffer_, ctypes.POINTER(ctypes.c_char*(PYOGG_STREAM_BUFFER_SIZE*self.channels))).contents
- if buffer:
- buffer += array_.raw[:new_bytes]
- else:
- buffer = array_.raw[:new_bytes]
+ buffer.append(array_.raw[:new_bytes])
- del array_
+ total_bytes_written += new_bytes
- if new_bytes == 0 or len(buffer) == PYOGG_STREAM_BUFFER_SIZE*self.channels:
+ if new_bytes == 0 or total_bytes_written >= PYOGG_STREAM_BUFFER_SIZE*self.channels:
break
- if len(buffer) == 0:
+ out_buffer = b"".join(buffer)
+
+ if total_bytes_written == 0:
self.clean_up()
return(None)
- return(buffer, len(buffer))
+ return(out_buffer, total_bytes_written)
else:
class VorbisFile:
def __init__(*args, **kw):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/PyOgg-0.6.7a1/pyogg/vorbis.py new/PyOgg-0.6.9a1/pyogg/vorbis.py
--- old/PyOgg-0.6.7a1/pyogg/vorbis.py 2019-01-14 16:37:17.000000000 +0100
+++ new/PyOgg-0.6.9a1/pyogg/vorbis.py 2019-04-01 13:19:35.000000000 +0200
@@ -491,12 +491,8 @@
libvorbisfile.ov_fopen.restype = c_int
libvorbisfile.ov_fopen.argtypes = [c_char_p, vf_p]
- def ov_fopen(path, vf=None):
- if not vf:
- vf = OggVorbis_File()
- vf_pointer = pointer(vf)
- result = libvorbisfile.ov_fopen(to_char_p(path), vf_pointer)
- return result, vf
+ def ov_fopen(path, vf):
+ return libvorbisfile.ov_fopen(to_char_p(path), vf)
libvorbisfile.ov_open_callbacks.restype = c_int
libvorbisfile.ov_open_callbacks.argtypes = [c_void_p, vf_p, c_char_p, c_long, ov_callbacks]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/PyOgg-0.6.7a1/setup.py new/PyOgg-0.6.9a1/setup.py
--- old/PyOgg-0.6.7a1/setup.py 2019-03-01 11:41:59.000000000 +0100
+++ new/PyOgg-0.6.9a1/setup.py 2019-04-01 13:24:20.000000000 +0200
@@ -28,7 +28,7 @@
# Versions should comply with PEP440. For a discussion on single-sourcing
# the version across setup.py and the project code, see
# https://packaging.python.org/en/latest/single_source_version.html
- version='0.6.7a1',
+ version='0.6.9a1',
description='Xiph.org\'s Ogg Vorbis, Opus and FLAC for Python',
@@ -69,6 +69,7 @@
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
],
# What does your project relate to?