<br><div><span class="gmail_quote">On 1/19/07, <b class="gmail_sendername">Edward Hervey</b> &lt;<a href="mailto:bilboed@gmail.com">bilboed@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 1/18/07, Vinayak &lt;<a href="mailto:vinayak.pane@gmail.com">vinayak.pane@gmail.com</a>&gt; wrote:<br>&gt; Hi,<br>&gt;<br>&gt; On 1/18/07, ensonic &lt;<a href="mailto:ensonic@hora-obscura.de">ensonic@hora-obscura.de</a>
&gt; wrote:<br>&gt; &gt; hi,<br>&gt; &gt;<br>&gt; &gt; On 2:10:29 pm 18/01/2007 Vinayak &lt;<a href="mailto:vinayak.pane@gmail.com">vinayak.pane@gmail.com</a>&gt; wrote:<br>&gt; &gt; &gt;<br>&gt; &gt; &gt; Hi Everyone,<br>
&gt; &gt; &gt; My gst-application gets stuck at gst_object_unref function which is<br>&gt; &gt; &gt; called after the main loop is over and pipeline state is set to NULL.<br>&gt; &gt;<br>&gt; &gt; whats happening? a crash? for the refcount related thing you might wanna
<br>&gt; &gt; try <a href="http://refdbg.sf.net">http://refdbg.sf.net</a> . You could also attach your source, so that we<br>&gt; can<br>&gt; &gt; look at it.<br>&gt;<br>&gt; No there is no crash.&nbsp;&nbsp;It&nbsp;&nbsp;doesn&#39;t&nbsp;&nbsp;terminate at all , I have to kill that
<br>&gt; process.<br><br> hmm... are you shutting down your pipeline from a signal callback and<br>not from a bus message by any chance ? It sems like a deadlock because<br>you try to shut down the pipeline from a streaming thread.
</blockquote><div><br>No, In my application:-<br><br></div>{<br>.&nbsp; /* created elements */<br>..<br>.. <br>&nbsp; bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));<br>&nbsp; gst_bus_add_watch (bus, bus_call, loop);<br>&nbsp; gst_object_unref (bus);
<br><br>&nbsp; &nbsp; &nbsp;&nbsp; /* put all elements in a bin */<br>&nbsp; gst_bin_add_many (GST_BIN (pipeline),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; source, encoder, sink, NULL);<br><br>&nbsp; gst_element_link (source, encoder);<br>&nbsp; gst_element_link (encoder, sink);<br>
<br>&nbsp; &nbsp; &nbsp; /* Now set to playing and iterate. */<br>&nbsp; g_print (&quot;APP: Setting to PLAYING\n&quot;);<br>&nbsp; gst_element_set_state (pipeline, GST_STATE_PLAYING);<br>&nbsp; g_print (&quot;APP: Running\n&quot;);<br>&nbsp; g_main_loop_run (loop);
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* clean up nicely */<br>&nbsp; g_print (&quot;APP: Returned, stopping playback\n&quot;);<br>&nbsp; gst_element_set_state (pipeline, GST_STATE_NULL);<br>&nbsp; g_print (&quot;APP: Deleting pipeline\n&quot;);<br>&nbsp; gst_object_unref (GST_OBJECT (pipeline));
<br><br>&nbsp; return 0;<br>}<br><br>Here the bus is already unref. The application hangs at last line ==&gt; gst_object_unref(GST_OBJECT(pipeline))<br><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
&nbsp;&nbsp;As mentionned before, seeing your code would be much easier to spot the error.</blockquote><div><br>Thanks, <br>
--vinayak<br>
<br><br></div></div>