[Bug 698851] playbin: ability to mix or play multiple audio and text streams simultaneously

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Thu May 23 00:25:56 PDT 2013


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

Sebastian Dröge <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #245091|none                        |needs-work
             status|                            |

--- Comment #17 from Sebastian Dröge <slomo at circular-chaos.org> 2013-05-23 07:25:52 UTC ---
Review of attachment 245091:
 --> (https://bugzilla.gnome.org/review?bug=698851&attachment=245091)

::: gst/playback/gstplaybin2.c
@@ +1821,3 @@
       GstPad *old_sinkpad;
+      if (!g_object_class_find_property (G_OBJECT_GET_CLASS (sinkpad),
+              "always-ok"))

Instead of this I would add checks for all of the (relevant) input-selector
properties... and if the custom selectors allows one of them, allow to use it
through playbin. Only only do these property checks after requesting a pad from
the stream combiner (for the pad properties) and when selecting the stream
combiner (for the element properties) and cache this in GstSourceSelect

@@ +2166,3 @@
+    if (combiner) {
+      gst_bin_add (GST_BIN (playbin), combiner);
+      gst_object_ref_sink (combiner);

Handle this exactly like the sinks, i.e. basically copy the set_sink() function
and also include the behaviour from playsink for the sinks. Especially don't
add the combiner to the bin/remove it from the bin here.

Store them in the GstSourceGroup and GstSourceSelect at the same place where
otherwise the input-selector would be created, and add/remove them from the bin
at the same time as the input-selector would currently be added/removed.
And store an additional reference to the input-selector and the stream combiner
in the GstSourceGroup, which is then decreased again after it is removed from
the bin to make sure you don't destroy custom stream combiners when they're
removed from the bin but that you destroy input-selectors.

-- 
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