Seek on running HW encoded pipeline gives errors but not on native video pipeline
marc lievens
mark.lievens at gmail.com
Fri Nov 5 08:27:18 UTC 2021
Hi
When seeking on a running pipeline HW encode pipeline, then I get next
errors.
GStreamer-CRITICAL **: 08:30:20.042: gst_segment_do_seek: assertion
'segment->format == format' failed
GStreamer-CRITICAL **: 08:30:50.380: gst_buffer_get_size: assertion
'GST_IS_BUFFER (buffer)' failed
GStreamer-CRITICAL **: 08:30:50.382: gst_qt_mux_send_buffer: assertion 'buf
!= NULL' failed
Could not multiplex stream., debug : ../gst/isomp4/gstqtmux.c(5024):
gst_qt_mux_add_buffer (): /GstPipeline:pipeline0/GstQTMux:muxer: Failed to
push sample.
But when I remove all transcoding elements, then seeking on a running
pipeline is executed.
But only when gst_base_sink_set_last_sample_enabled is set to false,
otherwise seeking didn’t work either.
Seeking is done in GST_FORMAT_TIME with options
GstSeekFlags(GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT |
GST_SEEK_FLAG_SEGMENT);
pipeline : filesrc ! qtdemux ! h264parse ! d3d11h264dec ! mfh264enc !
h264parse ! qtmux fragment-duration=100 ! multisocketsink
Gstreamer version : 1.18.5
I already tried different options like :
Flushing/non flushing seeks
Sync and Async on multisocketsink
gst_base_src_set_format((GstBaseSrc*)filesrc), GST_FORMAT_TIME);
Different options on the mfh264enc and qtmux
Does anyone have Idea what I'm doing wrong or I can get seeking working an
a running hardware encoded pipeline?
Cheers marc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20211105/edbfa92a/attachment.htm>
More information about the gstreamer-devel
mailing list