Hi,<br><br> Thanks for all the help. The issue got resolved. The issue was that I had multiple sinks and I wan not using any queues. I tried what  Thabelo suggested and saw that the pipeline is stuck when trying to preroll. I used queues to connect to my source and everything worked fine.<br>
<br>Arnout,<br><br>   I have no choice on this matter as I am trying to make a gstreamer plugin out of some existing library. I don&#39;t have the source of the library. The library reads data from a stream, demuxes it and gives me separate outputs. Thanks once again for all your help.<br>
<br>Regards<br>KK<br><br><div class="gmail_quote">On Wed, Jun 10, 2009 at 8:39 PM, Arnout Vandecappelle <span dir="ltr">&lt;<a href="mailto:arnout@mind.be">arnout@mind.be</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Wednesday 10 June 2009 10:21:26 Krishnakumar Ramachandran wrote:<br>
&gt;  I am trying to create a sample source plugin with 2 source pads. (My large<br>
&gt; idea is to include a demux also in the source plugin and at that point in<br>
&gt; time one pad will push audio and the other will push video. But as of now<br>
&gt; both pads are of type &quot;ANY&quot;). To test my plugin, I am trying to connect it<br>
&gt; to two filesinks (i.e each source pad is connected to the sink pad of a<br>
&gt; filesink). So the pipeline has 3 plugins. My test source  and 2 filesinks.<br>
&gt; After creating the pipeline, I call gst_element_set_state with<br>
&gt; GST_STATE_PLAYING. After this initially all 3 of the plugins and pipeline<br>
&gt; move to READY state (I get bus_call callback with state changed<br>
&gt; confirmation). Then my source plugin changes to PAUSED state and then the<br>
&gt; entire app hangs. I have attached the sample app code I am working on.<br>
&gt; Please tell me what I am doing wrong here.<br>
<br>
</div> Most likely, your plugin is not pushing any buffers while in PAUSED state.<br>
The filesinks try to go to PAUSED asynchronously (as you can see from the<br>
set_state return value).  They will only succeed in the state change once<br>
they received a buffer from the upstream element.  This is called prerolling.<br>
<br>
 You can take a look at the implementation of GstBaseSrc<br>
(gstreamer/gst-libs/base/gstbasesrc.c) for an example of how a source element<br>
should work.  GstBaseSrc only supports a single source pad, so you can&#39;t use<br>
that directly.<br>
<br>
 By the way, it is in general not a good idea to combine stuff into a single<br>
element.  In particular, merging the demux with the source is probably a very<br>
bad idea.  In most cases, you can live with the standard source elements and<br>
just add a custom caps type for your mux.  Or, if really necessary, it may be<br>
more convenient to create two source elements that share some common state<br>
info.<br>
<br>
 Regards,<br>
 Arnout<br>
<font color="#888888"><br>
--<br>
Arnout Vandecappelle                               arnout at mind be<br>
Senior Embedded Software Architect                 +32-16-286540<br>
Essensium/Mind                                     <a href="http://www.mind.be" target="_blank">http://www.mind.be</a><br>
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven<br>
LinkedIn profile: <a href="http://www.linkedin.com/in/arnoutvandecappelle" target="_blank">http://www.linkedin.com/in/arnoutvandecappelle</a><br>
GPG fingerprint:  D206 D44B 5155 DF98 550D  3F2A 2213 88AA A1C7 C933<br>
</font><div><div></div><div class="h5"><br>
------------------------------------------------------------------------------<br>
Crystal Reports - New Free Runtime and 30 Day Trial<br>
Check out the new simplified licensing option that enables unlimited<br>
royalty-free distribution of the report engine for externally facing<br>
server and web deployment.<br>
<a href="http://p.sf.net/sfu/businessobjects" target="_blank">http://p.sf.net/sfu/businessobjects</a><br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.sourceforge.net">gstreamer-devel@lists.sourceforge.net</a><br>
<a href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel" target="_blank">https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</a><br>
</div></div></blockquote></div><br>