mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-21 07:46:38 +00:00
urisourcebin: Call do_async_done when source state change returns NO_PREROLL
Otherwise for RTSP streams for example, the pipeline will never go to PLAYING as it will be missing an ASYNC_DONE message. https://bugzilla.gnome.org/show_bug.cgi?id=780099
This commit is contained in:
parent
cc28e7cce0
commit
7e94d2824f
1 changed files with 3 additions and 0 deletions
|
@ -2943,8 +2943,11 @@ gst_uri_source_bin_change_state (GstElement * element,
|
||||||
ret = gst_element_set_state (urisrc->source, GST_STATE_PAUSED);
|
ret = gst_element_set_state (urisrc->source, GST_STATE_PAUSED);
|
||||||
if (ret == GST_STATE_CHANGE_FAILURE)
|
if (ret == GST_STATE_CHANGE_FAILURE)
|
||||||
goto setup_failed;
|
goto setup_failed;
|
||||||
|
|
||||||
if (ret == GST_STATE_CHANGE_SUCCESS)
|
if (ret == GST_STATE_CHANGE_SUCCESS)
|
||||||
ret = GST_STATE_CHANGE_ASYNC;
|
ret = GST_STATE_CHANGE_ASYNC;
|
||||||
|
else if (ret == GST_STATE_CHANGE_NO_PREROLL)
|
||||||
|
do_async_done (urisrc);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case GST_STATE_CHANGE_PAUSED_TO_READY:
|
case GST_STATE_CHANGE_PAUSED_TO_READY:
|
||||||
|
|
Loading…
Reference in a new issue