<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div style="" class="" dir="ltr" id="yui_3_16_0_1_1427049816200_3934"><span id="yui_3_16_0_1_1427049816200_4013" style="" class="">Thanks, Jan, for the tip.<br style="" class=""></span></div><div style="" class="" id="yui_3_16_0_1_1427049816200_4440" dir="ltr"><span id="yui_3_16_0_1_1427049816200_4013" style="" class=""><br style="" class=""></span></div><div style="" class="" id="yui_3_16_0_1_1427049816200_4439" dir="ltr"><span id="yui_3_16_0_1_1427049816200_4013" style="" class="">As far as I am concerned, I use the Python API. In this API, there is no "</span>gst_app_src_end_of_stream". Instead I use emit("end-of-stream"). But according to the documentation, it has the same effect : <br style="" class=""></div><div style="" class="" id="yui_3_16_0_1_1427049816200_4133" dir="ltr"><br style="" class=""></div><div style="" class="" id="yui_3_16_0_1_1427049816200_4174" dir="ltr">"When the application is finished pushing data into appsrc, it should call
<a style="" class="" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsrc.html#gst-app-src-end-of-stream" title="gst_app_src_end_of_stream ()"><code style="" class="">gst_app_src_end_of_stream()</code></a> or emit the end-of-stream action signal."</div><div style="" class="" id="yui_3_16_0_1_1427049816200_4098" dir="ltr"><br style="" class=""></div>I
may be wrong but I made some testing a while ago and I had the
impression that it was rather the audiosink that emits the EOS signal on
the bus before draining its queue.<div><span></span></div><br> <blockquote id="yui_3_16_0_1_1427049816200_6264" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;"> <div id="yui_3_16_0_1_1427049816200_6263" style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div id="yui_3_16_0_1_1427049816200_6262" style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div id="yui_3_16_0_1_1427049816200_6261" dir="ltr"> <hr size="1"> <font id="yui_3_16_0_1_1427049816200_6265" face="Arial" size="2"> <b><span style="font-weight:bold;">De :</span></b> Jan Alexander Steffens <jan.steffens@gmail.com><br> <b><span style="font-weight: bold;">À :</span></b> Sébastien FENET <sebastien.fenet@yahoo.fr>; Subodh Chiwate <subodh.chiwate@ufomoviez.com> <br><b><span style="font-weight: bold;">Cc :</span></b> Discussion of the development of and with GStreamer <gstreamer-devel@lists.freedesktop.org> <br> <b><span style="font-weight: bold;">Envoyé le :</span></b> Samedi 21 mars 2015 10h31<br> <b><span style="font-weight: bold;">Objet :</span></b> Re: How to handle EOS from an appsrc to ensure all frames are played out before pipeline closes?<br> </font> </div> <div id="yui_3_16_0_1_1427049816200_6266" class="y_msg_container"><br>On Fri, Mar 20, 2015 at 7:57 AM, Subodh Chiwate<br clear="none"><<a shape="rect" ymailto="mailto:subodh.chiwate@ufomoviez.com" href="mailto:subodh.chiwate@ufomoviez.com">subodh.chiwate@ufomoviez.com</a>> wrote:<br clear="none">> I raise an EOS event from the appsrc<br clear="none">> "need-data" callback when I run out of data.<br clear="none"><br clear="none">On Fri, Mar 20, 2015 at 8:59 AM, Sébastien FENET<br clear="none"><<a shape="rect" ymailto="mailto:sebastien.fenet@yahoo.fr" href="mailto:sebastien.fenet@yahoo.fr">sebastien.fenet@yahoo.fr</a>> wrote:<br clear="none">> I have the same issue. Same kind of pipeline, I send the EOS signal to<br clear="none">> appsrc when I run out of data. I listen to the pipeline's bus to get the EOS<br clear="none">> back when it has gone through all elements. And it appears I get the EOS<br clear="none">> signal on the bus too early (the last bits of data are not played).<br clear="none"><br clear="none">How are you sending the EOS? You should use gst_app_src_end_of_stream,<br clear="none">not gst_element_send_event or similar.<br clear="none">The latter can send the EOS event before appsrc has completely drained<br clear="none">its internal queue.<div class="qtdSeparateBR"><br><br></div><div class="yqt8219424200" id="yqtfd72711"><br clear="none">_______________________________________________<br clear="none">gstreamer-devel mailing list<br clear="none"><a shape="rect" ymailto="mailto:gstreamer-devel@lists.freedesktop.org" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br clear="none"><a shape="rect" href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br clear="none"></div><br><br></div> </div> </div> </blockquote> </div></body></html>