[Bug 748360] rtspsrc: teardown usually never happens

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Dec 3 00:13:05 UTC 2016


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

--- Comment #6 from Matt Staples <staples255 at gmail.com> ---
Is this fix a candidate for 1.11?

This solves the problem nicely for me as well. 

Without this fix, I've found that if the RTSP server doesn't support PAUSE,
then the CMD_PAUSE completes much more quickly, causing CMD_CLOSE to never get
executed.  For servers that do implement PAUSE, the CMD_CLOSE usually
interrupts CMD_PAUSE, so it at least tries to call TEARDOWN.  It doesn't always
successfully complete TEARDOWN though, depending entirely on timing. 

With this fix, my app can set the pipeline to READY, then wait (with some
timeout) for the progress message telling it that close is completed, and then
proceed from there. But if I one wants to set the pipeline straight to NULL, it
will still transition to that state without blocking, which I understand was
the original design goal.

Another note: none of that works with playbin, as that component seems to
internally set rtspsrc to NULL on its own.  That is, when I set the pipeline to
READY, playbin transitions rtspsrc all the way to NULL, leaving the application
no way to guarantee that TEARDOWN happens.  (That's not a problem for me, as my
app doesn't use playbin, but I found that problem while testing fixes to this
problem via gst-play-1.0.)

-- 
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