diff --git a/subprojects/gst-plugins-good/ext/adaptivedemux2/gstadaptivedemux.c b/subprojects/gst-plugins-good/ext/adaptivedemux2/gstadaptivedemux.c index f4ff4d5f74..f154aee5eb 100644 --- a/subprojects/gst-plugins-good/ext/adaptivedemux2/gstadaptivedemux.c +++ b/subprojects/gst-plugins-good/ext/adaptivedemux2/gstadaptivedemux.c @@ -2942,6 +2942,9 @@ gst_adaptive_demux_stop_tasks (GstAdaptiveDemux * demux, gboolean stop_updates) gst_adaptive_demux_stop_manifest_update_task (demux); TRACKS_LOCK (demux); + if (demux->input_period) + gst_adaptive_demux_period_stop_tasks (demux->input_period); + demux->priv->flushing = TRUE; g_cond_signal (&demux->priv->tracks_add); gst_task_stop (demux->priv->output_task); @@ -2949,9 +2952,6 @@ gst_adaptive_demux_stop_tasks (GstAdaptiveDemux * demux, gboolean stop_updates) gst_task_join (demux->priv->output_task); - if (demux->input_period) - gst_adaptive_demux_period_stop_tasks (demux->input_period); - demux->priv->qos_earliest_time = GST_CLOCK_TIME_NONE; }