[Bug 733148] audio encoder/decoder base classes needlessly delay caps events

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sun Jul 27 22:53:12 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=733148
  GStreamer | gst-plugins-base | git

--- Comment #5 from Sebastian Dröge (slomo) <slomo at coaxion.net> 2014-07-28 05:53:04 UTC ---
The problem basically is that e.g. vorbisenc needs events after the CAPS event
to produce its srcpad caps. In Vorbis we have these stream-headers in the caps,
which contain the Vorbis header packets. These contain, among other things,
vorbiscomments. To produce vorbiscomments you need the TAGS events that happen
somewhere between the SEGMENT event and the first buffer.

Before this change set_format() was only called on vorbisenc when the first
buffer arrived. At that time the tags were known already. Now set_format() is
called when the CAPS event arrived, which is before the tags are known. So we
never write tags into Vorbis streams now.

That's relatively easy to fix in the encoder subclasses though. They can just
delay the downstream part of the negotiation and not immediately do it in
set_format().

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list