After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 337031 - vorbisdec outputs too much data
vorbisdec outputs too much data
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other All
: Normal critical
: 0.10.11
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-04-03 13:23 UTC by Michael Smith
Modified: 2006-09-29 10:54 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Michael Smith 2006-04-03 13:23:17 UTC
Vorbisdec outputs additional data beyond the end of the stream.

We don't set EOS on the packets fed to libvorbis, so libvorbis is unable to correctly trim the final packet. This means we output made-up-data beyond the end of the actual stream.

We need to delay pushing the packets into the decoder library by a packet, so that  we can push the final packet with EOS set when we get the EOS event.
Comment 1 Wim Taymans 2006-04-24 15:35:11 UTC
indeed. I was thinking about a new buffer flag to mark the last packet but that seems like a wrong idea if some element would need to delay by more than one buffer, for example. Just delaying it in the element is best.
Comment 2 Michael Smith 2006-09-29 10:54:50 UTC
We do clipping in vorbisdec now, so this works right (I did a single simple test), although we don't do it using libvorbis's internal clipping, that's ok.