Different seek behaviour on paused and running pipeline

marc lievens mark.lievens at gmail.com
Mon Nov 1 05:59:04 UTC 2021


Hi,

When executing a flushing seek with reply true on a paused pipeline I get
next error, but seek seems to be executed.

Error : Gstreamer Critical gst_segment_do_seek assertion segment->format ==
format failed

When executing a flushing seek with reply true on running pipeline I get
next errors, and seek is not executed

Error :  Gstreamer Critical gst_segment_do_seek assertion segment->format
== format failed
Warn : qtmux.c 1931:  gst_qt_mux_send_buffer:<muxer> Failed to send buffer
Error : qtmux.c 4214: gst_qt_mux_pad_fragment_add_buffer:<mux> Failed to
send fragment

The seek is a time based with options GST_SEEK_FLAG_FLUSH |
GST_SEEK_FLAG_KEY_UNIT | GST_SEEK_FLAG_SEGMENT

Pipeline :
filesrc ! qtdemux  ! h264parse ! avdec_264  ! x264enc bitrate=1024 ! qtmux
fragment-duration=100 !  multisocketsink

I tried some settings as mentioned in gstreamer archives, but problem
remains.
- gst_base_src_set_format ((GstBasesrc *) filesrc , GST_FORMAT_TIME )
- on Qtmux streamable = TRUE
- on filesrc do-timestamp = TRUE
-  on multisocketsink sync = TRUE

Used Gstreamer version 1.18.5 msdev 32 bit.

What can I do, or what am I doing wrong to perform a valid seek

Cheers,
Marc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20211101/4af231e7/attachment.htm>


More information about the gstreamer-devel mailing list