<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.28.3">
</HEAD>
<BODY>
I managed to find the multipartdemux element, but the single-stream property doesn't exist:<BR>
<BR>
If I take out the if(...property exists...) check and simply try to set the property:<BR>
<BR>
(&lt;unknown&gt;:26920): GLib-GObject-WARNING **: g_object_set_valist: object class `GstMultipartDemux' has no property named `single-stream'<BR>
<BR>
I'm using GStreamer version 0.10.35, and gst-plugins-good-0.10.30.&nbsp; What version was the single-stream property added in?<BR>
<BR>
-Mark<BR>
<BR>
On Wed, 2011-06-29 at 20:55 -0700, Hoyt, David wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
&gt;&gt; To use that, you'll need to find when playbin2 adds a uridecodebin and then find when the uridecodebin adds a decodebin and then locate the multipartdemux in the decodebin and set the property. [single-stream=true]

&gt; Any idea how to do this programmatically, if all I have access to is the playbin2 element?

Take a look at the code available here to get you started: <A HREF="http://code.google.com/p/ossbuild/source/browse/trunk/Main/GStreamer/Source/gstreamer/tools/gst-player.c#2407">http://code.google.com/p/ossbuild/source/browse/trunk/Main/GStreamer/Source/gstreamer/tools/gst-player.c#2407</A>

Follow the callback into playbin_element_added() on line 1427, then into uridecodebin_element_added() on line 1450, then into decodebin_element_added() on line 1471, and finally into examine_element() on line 506. The property is explicitly set on line 514. It's rather ugly, but it does the trick.
_______________________________________________
gstreamer-devel mailing list
<A HREF="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</A>
<A HREF="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</A>
</PRE>
</BLOCKQUOTE>
<BR>
</BODY>
</HTML>