You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
gstdec: Update in line with GStreamer 1.18 API break
This fixes an issue seen when calculating fingerprints with GStreamer
1.18:
...
File "/usr/lib/python3.9/site-packages/acoustid.py", line 333, in fingerprint_file
return _fingerprint_file_audioread(path, maxlength)
File "/usr/lib/python3.9/site-packages/acoustid.py", line 275, in _fingerprint_file_audioread
fp = fingerprint(f.samplerate, f.channels, iter(f), maxlength)
File "/usr/lib/python3.9/site-packages/acoustid.py", line 217, in fingerprint
fper.feed(block)
File "/usr/lib/python3.9/site-packages/chromaprint.py", line 145, in feed
data = BYTES_TYPE(data)
ValueError: operation forbidden on released memoryview object
This occurs due to an API break in the Python bindings. The
`Gst.Memory.map()` previously returned a copy of the audio data, but
it now returns a `memoryview()` instance pointing directly to the
memory. Since this is only valid while the Gst.Memory is mapped, we
need to manually copy it into a bytes() object.
The relevant GStreamer change is:
https://gitlab.freedesktop.org/gstreamer/gst-python/-/commit/fecfe451a7566740960d87da8a177f8a776f6137
0 commit comments