[gstreamer-bugs] [Bug 417420] [autoaudiosink] add "caps" property to filter sinks by caps

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Tue Mar 13 13:06:53 PDT 2007


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=417420

  GStreamer | gst-plugins-good | Ver: HEAD CVS





------- Comment #9 from René Stadler  2007-03-13 20:04 UTC -------
(In reply to comment #8)
...
> It can be used to restrict the set of sinks from which autoaudiosink chooses
> the actual sink. I'm not sure if anyone else wants to use this feature, maybe
> if a system has a large amount of audio sinks and someone wants to have more
> control over what actual sink the autoaudiosink chooses.

Yeah I got that.  What I cannot find is a specific example of where this gives
any benefit.  Non-raw sinks with a rank >= MARGINAL currently cause problems;
the whole auto-plugging concept is geared towards what is needed for the
playbin/decodebin/auto*sink elements to work together.  For playback of raw
caps, converters are needed between decodebin and sinks because sinks don't
support all raw format variants.  Playbin does just that, but ... !
audioresample ! audioconvert ! autoaudiosink fatally breaks for non-raw sinks.

The fact that you use non-raw sinks for autoplugging implies that these sinks
have a rank >= MARGINAL.  Since such a setup breaks an unmodified playbin, the
patch at least has to be modified such that the default value for the property
is GST_AUDIO_INT_PAD_TEMPLATE_CAPS instead, which makes a lot of sense to me.

I'm still unsure that adding the property is the right way to do this.  The big
picture here is that the auto-plugging to non-raw caps that decodebin2
introduces forces one to rethink the way the whole auto-plugging concept works.
 You already mentioned the gist of it: It would be better to use caps nego. 
This is because with non-raw sinks, the automatic sink selection additionally
depends on the caps it should process.

Neither playbin nor autoaudiosink were designed to make full use of decodebin2.
 What's really in order is a playbin2 and a reshaped autosink.


-- 
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email




More information about the Gstreamer-bugs mailing list