[Bug 740509] Seek fail with test-uri

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Mar 16 21:16:30 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=740509

--- Comment #9 from Carlos Rafael Giani <dv at pseudoterminal.org> ---
Summary of the current findings:

Main cause is that the GCond in gst_rtsp_media_get_status() is not signaled.
This signal is supposed to happen when an ASYNC_DONE message is received. The
code in rtsp-media.c sets the status to GST_RTSP_MEDIA_STATUS_PREPARED when
this message is received, and this status then triggers a GCond broadcast.

The strange part is why this worked in the first place. GstBin will set its
state to NO_PREROLL if a state change of at least one child element returned
NO_PREROLL (gstbin.c:2808). Prior to the above commit, the appsrc element
weren't returning this because they weren't live. But udpsrc is always live,
and yet, these do *not* return NO_PREROLL , but SUCCESS instead. This is most
likely what was hiding this bug in the past.

The two remaining questions are:

(1) why does udpsrc return SUCCESS, and not NO_PREROLL?
(2) since relying on ASYNC_DONE is wrong, how else should the code wait for
preroll to finish? check for PAUSED state changes?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list