<br><br><div class="gmail_quote">2009/6/19 Wim Taymans <span dir="ltr">&lt;<a href="mailto:wim.taymans@gmail.com">wim.taymans@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Fri, 2009-06-19 at 16:02 +0000, Albert Costa wrote:<br>
<br>
Your approach will probably work.<br>
<br>
Current GIT /and the eventual 0.10.24) has framestepping through the<br>
STEP events, which should solve things in a more general way (when you<br>
need to keep audio synchronized too).</blockquote><div> </div><div>Does that means that the framestep draft [1]  will be finally implemented in 0.10.24? Good news, though. <br><br>Cheers<br><br>[1] <a href="http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/design/draft-framestep.txt">http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/design/draft-framestep.txt</a><br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<br>
Wim<br>
<div><div></div><div class="h5"><br>
&gt; Hi,<br>
&gt; I&#39;m trying to do the following:<br>
&gt; I have an application that constructs and controls a pipeline. Merely,<br>
&gt; my pipe would be &quot;filesink ! decodebin ! identity sync=true !<br>
&gt; myfilter ! ffmpegcolorspace ! directdrawsink sync=false&quot;.<br>
&gt; The element myfilter is currently just a pass-through element (it does<br>
&gt; not process anything). My goal is, from the application, to play the<br>
&gt; file only by moving a frame ahead when the user hits a key (in fact<br>
&gt; later that would be a signal sent by another process). My idea was to<br>
&gt; block the chain() function inside myfilter each time it is called,<br>
&gt; untill a release notification is sent. What I did so far is :<br>
&gt; in the chain() :<br>
&gt; {<br>
&gt; ...<br>
&gt;     g_mutex_lock(myfilter-&gt;lock);<br>
&gt;   do<br>
&gt;   {<br>
&gt;     g_cond_wait(myfilter-&gt;process_next, myfilter-&gt;lock);<br>
&gt;   }<br>
&gt;   g_mutex_unlock(myfilter -&gt;lock);<br>
&gt; ...<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; In my application, I have a specific function that gets the sink pad<br>
&gt; of my filter element, and send a specific event on it.<br>
&gt; In myfilter&#39;s sink_event function, I have a case of event type where I<br>
&gt; call g_cond_signal(myfilter-&gt;process_next) (which I thought would<br>
&gt; release the lock in the chain).<br>
&gt; My problem is that when I launch the pipeline, the cond_wait does lock<br>
&gt; the chain function; but then in my application specific function,<br>
&gt; calling gst_pad_send_event never returns, and my event is thus not<br>
&gt; received by my element. Eveything hangs...<br>
&gt; Is there any way to have it working somehow? (another option was to<br>
&gt; set the pipe in pause mode and send seek events to go to next frame,<br>
&gt; but i&#39;m using mpeg2 ts files that do not support seek anyway, and I<br>
&gt; have other constraints for which I need an element that can be<br>
&gt; controled).<br>
&gt; Any help would be appreciated,<br>
&gt; Regards,<br>
&gt; Al<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
</div></div>&gt; ------------------------------------------------------------------------------<br>
&gt; Crystal Reports - New Free Runtime and 30 Day Trial<br>
&gt; Check out the new simplified licensing option that enables unlimited<br>
&gt; royalty-free distribution of the report engine for externally facing<br>
&gt; server and web deployment.<br>
&gt; <a href="http://p.sf.net/sfu/businessobjects" target="_blank">http://p.sf.net/sfu/businessobjects</a><br>
&gt; _______________________________________________ gstreamer-devel mailing list <a href="mailto:gstreamer-devel@lists.sourceforge.net">gstreamer-devel@lists.sourceforge.net</a> <a href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel" target="_blank">https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</a><br>

<br>
<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>
</blockquote></div><br><br clear="all"><br>-- <br>Andoni Morales Alastruey<br><br>LongoMatch:The Digital Coach<br><a href="http://www.longomatch.ylatuya.es">http://www.longomatch.ylatuya.es</a><br>