Hello,
When i am sending segment seek event, sometimes i see GST_MESSAGE_ASYNC_DONE and sometimes GST_MESSAGE_SEGMENT_DONE on a bus. What is the reason for this? Mikl -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hello,
Gurus, do not keep quiet, please! Maybe it is a simple question for you and you don`t want even to spent time on. But it is important to keep supporting developers! I have experience with GStreamer and even small tip like "try this" or "this can be a reason" can help me. Please! Mikl -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
In reply to this post by Mikl
Le 28 nov. 2017 9:32 AM, "Mikl" <[hidden email]> a écrit : Hello, This one is preroll termination. Happens initially, and every time you seek with the flushing flag. GST_MESSAGE_SEGMENT_DONE on a bus. This one indicates that it is safe to perform a non flushing segment seek. It is usually sent buy the demuxer. The decoder might not be done yet. You always need to initiate segment seeking with a flushing seek at the moment.
_______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
This post was updated on .
Hello, Nicolas
Thank you for the answer. I still can not do it. :( Did i understand you correctly i have to do this: 0) pipeline is paused 1) gst_element_seek( _pipeline, 1, GST_FORMAT_TIME, *GST_SEEK_FLAG_FLUSH*, GST_SEEK_TYPE_SET, segmentStart, GST_SEEK_TYPE_END, 0) 2) wait for GST_MESSAGE_ASYNC_DONE 3) gst_element_seek( _pipeline, 1, GST_FORMAT_TIME, *GST_SEEK_FLAG_SEGMENT*, GST_SEEK_TYPE_SET, segmentStart, GST_SEEK_TYPE_SET, segmentEnd) 4) wait for GST_MESSAGE_SEGMENT_DONE 5) start playback pipeline 6) read buffers But app is freezing on (3) What i am doing wrong? Mikl -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list gstreamer-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hello, Nicolas
Looks like i have to do it like this: 0) pipeline is paused 1) start playback pipeline 2) gst_element_seek( _pipeline, 1, GST_FORMAT_TIME, *GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_SEGMENT*, GST_SEEK_TYPE_SET, segmentStart, GST_SEEK_TYPE_SET, segmentEnd) 3) wait for GST_MESSAGE_SEGMENT_DONE 4) gst_element_seek( _pipeline, 1, GST_FORMAT_TIME, *GST_SEEK_FLAG_SEGMENT*, GST_SEEK_TYPE_SET, segmentStart, GST_SEEK_TYPE_SET, segmentEnd) 5) wait for GST_MESSAGE_SEGMENT_DONE 6) read buffers (i can start already in between 4 and 4) 7) pipeline is pausing (itself) Can you confirm, please? Mikl -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |