After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 588144 - rtspsrc: (network) timeout behaviour inconsistent between TCP and UDP
rtspsrc: (network) timeout behaviour inconsistent between TCP and UDP
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 607579 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2009-07-09 09:45 UTC by Mark Nauwelaerts
Modified: 2018-11-03 14:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Check for UDP streaming timeout (3.97 KB, patch)
2009-07-09 09:52 UTC, Mark Nauwelaerts
none Details | Review
sdp with bandwith information (7.35 KB, application/vnd.stardivision.impress)
2010-10-07 09:33 UTC, Mark Nauwelaerts
  Details

Description Mark Nauwelaerts 2009-07-09 09:45:10 UTC
rtspsrc's tcp_timeout property prevents rtspsrc from "hanging" if network timeout/interruption occurs during streaming (or interaction with RTSP server).  However, no such (stringent) checks are performed when UDP happens to be selected (there may be some sender timeout detection in rtpbin/jitterbuffer, but the net overall effect/user experience is not quite the same).

Although this may or may not be intentional and/or related to UDP issues (e.g. inherently less reliable than TCP), possible patch follows anyway.
Comment 1 Mark Nauwelaerts 2009-07-09 09:52:25 UTC
Created attachment 138108 [details] [review]
Check for UDP streaming timeout

Note that tcp_timeout is (ab)used as the timeout value in question.

As such, the semantics of the timeout properties are slightly shifted:
- timeout is used as initial timeout (UDP -> TCP fallback)
- tcp_timeout is used as streaming timeout (whether or not TCP)
Comment 2 Wim Taymans 2009-07-14 08:32:41 UTC
RTP has some other timeout mechanisms in the session manager. Those are the timeouts that should be used according to the RTP spec. I believe we connect to the on-timeout and on-sender-timeout to catch (and stop) those kind of timeouts.

Are you seeing a case where it never stops after a timeout?
Comment 3 Mark Nauwelaerts 2009-07-14 18:59:25 UTC
No (i.e. UDP does eventually timeout), but I am seeing cases where a tcp-timeout set to e.g. 5 seconds leads to a timeout after 5 seconds if interleaved transport is selected, and only after +/- 30 seconds if UDP is selected.

Since higher levels are conceivably not supposed to care about transport level issues, this is (somewhat) inconsistent behaviour, in the sense of the (UDP) "hanging" being different (by an "order of magnitude") and apparently not being affected/controllable by some property.
Comment 4 Tobias Mueller 2010-04-13 18:34:01 UTC
Reopening as the requested information has been provided.
Comment 5 Mark Nauwelaerts 2010-10-07 09:33:24 UTC
Created attachment 171884 [details]
sdp with bandwith information

Actually, I am now seeing a case where it never stops after a timeout (as in bug #607579).  This appears to be due to the session bandwidth configuration that was add in commit bc72d8250c0b6fb97212cf64bb41fc16af7fce38 in combination with a typical (WMServer) SDP (attached) that has RR=RS=0 bandwidth.

That disables some RTCP stuff (which is likely not uncommon in RTSP cases), and in particular bypasses any (session sender) timeout checking.

In contrast, checking for UDP streaming timeout would always apply, and be more consistent with the TCP transport case.
Comment 6 Mark Nauwelaerts 2010-10-07 09:34:22 UTC
*** Bug 607579 has been marked as a duplicate of this bug. ***
Comment 7 Sebastian Dröge (slomo) 2011-05-20 07:06:42 UTC
What should be done with this bug?
Comment 8 Sebastian Dröge (slomo) 2013-08-21 18:14:47 UTC
Patches need to be rebased to apply against latest GIT. Wim, Mark? What should we do about this?
Comment 9 Mark Nauwelaerts 2013-08-24 09:54:34 UTC
AFAICS situation is still as before.

Could have a look at bringing up-to-date if there is consensus on how to proceed.
Comment 10 GStreamer system administrator 2018-11-03 14:39:59 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/15.