diff options
author | Youness Alaoui <youness.alaoui@collabora.co.uk> | 2011-08-23 20:49:33 +0000 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2011-08-26 09:51:45 +0200 |
commit | adcfcabb14cec04e3e70529c3bc57ff4aae14c39 (patch) | |
tree | d572f15d717aeabd20aa3a6981de957f09cbc3c9 | |
parent | 60442079f34591cb5a129f7a773ce74afcc1d886 (diff) |
hlsdemux: Stop the streaming task on PAUSED_TO_READY state change
-rw-r--r-- | gst/hls/gsthlsdemux.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gst/hls/gsthlsdemux.c b/gst/hls/gsthlsdemux.c index 1e984b9dc..cd61ed95b 100644 --- a/gst/hls/gsthlsdemux.c +++ b/gst/hls/gsthlsdemux.c @@ -302,7 +302,7 @@ gst_hls_demux_change_state (GstElement * element, GstStateChange transition) switch (transition) { case GST_STATE_CHANGE_PAUSED_TO_READY: demux->cancelled = TRUE; - g_cond_signal (demux->fetcher_cond); + gst_hls_demux_stop (demux); break; default: break; @@ -374,6 +374,7 @@ gst_hls_demux_src_event (GstPad * pad, GstEvent * event) gst_pad_push_event (demux->srcpad, gst_event_new_flush_start ()); } + demux->cancelled = TRUE; gst_hls_demux_stop_fetcher (demux, TRUE); gst_task_pause (demux->task); g_cond_signal (demux->thread_cond); @@ -397,6 +398,7 @@ gst_hls_demux_src_event (GstPad * pad, GstEvent * event) gst_pad_push_event (demux->srcpad, gst_event_new_flush_stop ()); } + demux->cancelled = FALSE; gst_task_start (demux->task); g_static_rec_mutex_unlock (&demux->task_lock); |