mxfdemux: Sometimes seeks from the seeking thread in pull mode
Seeking demuxers in pull mode should happen in the demuxer sinkpad task thread, with mxfdemux it is generally the case, but then there are cases where it start pulling data from the seeking thread, for example in
validate.file.playback.seek_forward.op2b-mpeg2-wave_hd_mxf
(only current -validate test where I saw that happen):
gst_debug_get_stack_trace (gstinfo.c:2908)
gst_validate_report_new (gst-validate-report.c:746)
gst_validate_report_valist (gst-validate-reporter.c:187)
gst_validate_report (gst-validate-reporter.c:320)
gst_validate_pad_monitor_get_range_func (gst-validate-pad-monitor.c:2494)
gst_pad_get_range_unchecked (gstpad.c:4798)
gst_pad_pull_range (gstpad.c:5039)
gst_mxf_demux_pull_range (mxfdemux.c:310)
gst_mxf_demux_pull_klv_packet (mxfdemux.c:2293)
gst_mxf_demux_find_essence_element (mxfdemux.c:2933)
gst_mxf_demux_src_event (mxfdemux.c:3913)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_multi_queue_src_event (gstmultiqueue.c:2656)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_parse_src_event_default (gstbaseparse.c:4520)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_video_decoder_src_event_default (gstvideodecoder.c:1473)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_input_selector_event (gstinputselector.c:1559)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_stream_synchronizer_src_event (gststreamsynchronizer.c:204)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_transform_src_eventfunc (gstbasetransform.c:1971)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_deinterlace_src_event (gstdeinterlace.c:3149)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_transform_src_eventfunc (gstbasetransform.c:1971)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_transform_src_eventfunc (gstbasetransform.c:1971)
gst_video_scale_src_event (gstvideoscale.c:1149)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_transform_src_eventfunc (gstbasetransform.c:1971)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_transform_src_eventfunc (gstbasetransform.c:1971)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_validate_pad_monitor_src_event_func (gst-validate-pad-monitor.c:2110)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
event_forward_func (gstpad.c:3054)
gst_pad_forward (gstpad.c:3008)
gst_pad_event_default (gstpad.c:3105)
gst_pad_send_event_unchecked (gstpad.c:5772)
gst_pad_push_event_unchecked (gstpad.c:5417)
gst_pad_push_event (gstpad.c:5554)
gst_base_sink_send_event (gstbasesink.c:4635)
gst_element_send_event (gstelement.c:1860)
gst_bin_send_event (gstbin.c:3146)
gst_element_send_event (gstelement.c:1860)
gst_bin_send_event (gstbin.c:3146)
gst_element_send_event (gstelement.c:1860)
gst_play_sink_send_event_to_sink (gstplaysink.c:4827)
gst_play_sink_send_event (gstplaysink.c:4871)
gst_element_send_event (gstelement.c:1860)
gst_element_send_event (gstelement.c:1860)
gst_validate_scenario_execute_seek (gst-validate-scenario.c:657)
_execute_seek (gst-validate-scenario.c:729)
gst_validate_execute_action (gst-validate-scenario.c:1811)
execute_next_action_full (gst-validate-scenario.c:2118)
?? (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4:0x7f8f3cfa1cff)
g_main_context_dispatch (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4:0x7f8f3cfa1281)
?? (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4:0x7f8f3cfa164c)
g_main_loop_run (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4:0x7f8f3cfa195e)
main (gst-validate.c:529)
__libc_start_main (libc-start.c:310)
_start (/home/thiblahute/devel/gstreamer/gst-build/build/subprojects/gst-devtools/validate/tools/gst-validate-1.0:0x55791ab9f206)