<div dir="ltr">Hi Michael & Nicolas,<div><br></div><div>Thanks for the pointers. The fakesink approach appeals more to me because it seems simpler, but I'm have a very elementary problem with it!</div><div><br></div><div>If I run a time "tee'd" pipeline like this,</div><div><br></div><div><div> gst-launch-1.0 -e v4l2src device=/dev/video0 ! tee name=t \</div><div> t. ! queue ! x264enc ! filesink location=fakesink_test.raw \</div><div> t. ! queue ! fakesink</div><div><br></div><div>I see the following output in my terminal,</div><div><br></div><div>Setting pipeline to PAUSED ...</div><div>Pipeline is live and does not need PREROLL ...</div><div>Setting pipeline to PLAYING ...</div><div>New clock: GstSystemClock</div><div>Redistribute latency...</div><div> C-c C-chandling interrupt. # Pressed C-c first time</div><div>Interrupt: Stopping pipeline ...</div><div>EOS on shutdown enabled -- Forcing EOS on the pipeline</div><div>Waiting for EOS...</div><div> C-c C-chandling interrupt. # Pressed C-c second time, something seems to have gone wrong :(</div><div>Interrupt: Stopping pipeline ...</div><div>Interrupt while waiting for EOS - stopping pipeline...</div><div>Execution ended after 0:00:03.109734115</div><div>Setting pipeline to PAUSED ...</div><div>Setting pipeline to READY ...</div><div>Setting pipeline to NULL ...</div><div>Freeing pipeline ...</div></div><div><br></div><div>And when I look at the "fakesink_test.raw" file, I see that it's zero bytes. Something appears to be getting blocked in the above minimal example.</div><div><br></div><div>If I remove the x264enc element, the pipeline works as I expect it to, producing a suitably large file,</div><div><br></div><div><div>$ gst-launch-1.0 -e v4l2src device=/dev/video0 ! tee name=t t. ! queue ! filesink location=fakesink_test.raw t. ! queue ! fakesink</div><div>Setting pipeline to PAUSED ...</div><div>Pipeline is live and does not need PREROLL ...</div><div>Setting pipeline to PLAYING ...</div><div>New clock: GstSystemClock</div><div> C-c C-chandling interrupt.</div><div>Interrupt: Stopping pipeline ...</div><div>EOS on shutdown enabled -- Forcing EOS on the pipeline</div><div>Waiting for EOS...</div><div>Got EOS from element "pipeline0".</div><div>EOS received - stopping pipeline...</div><div>Execution ended after 0:00:01.653899816</div><div>Setting pipeline to PAUSED ...</div><div>Setting pipeline to READY ...</div><div>Setting pipeline to NULL ...</div><div>Freeing pipeline ...</div></div><div><br></div><div>Any idea what I've done wrong in the first pipeline? I appear to be following the same pattern as the example in tee docs.</div><div><br></div><div>Thanks in advance,</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 8 June 2016 at 18:57, Nicolas Dufresne <span dir="ltr"><<a href="mailto:nicolas.dufresne@gmail.com" target="_blank">nicolas.dufresne@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Le mercredi 08 juin 2016 à 17:02 +0100, Charlie Turner a écrit :<br>
><br>
> v4l2src device=/dev/video0 num-buffers=1 ! jpegenc ! filesink<br>
> location="thumbnail.jpg"<br>
<br>
</span>You could:<br>
<br>
v4l2src ! tee name=t<br>
t. ! queue ! some-pipeline<br>
t. ! queue ! fakesink<br>
<br>
And another pipeline<br>
<br>
appsrc ! jpegenc ! filesink ...<br>
<br>
At random point, you can read "last-sample" property from the fakesink,<br>
and push that sample to the appsrc (followed with an eos).<br>
<span class="HOEnZb"><font color="#888888"><br>
Nicolas<br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Kind regards,</div>Charlie Turner</div></div>
</div>