[Live-devel] Server getting confused with RTCP message before PLAY command (when using RTP over TCP)
Stanley Biggs
stanley at gofuseit.com
Mon Sep 2 06:58:28 PDT 2013
Hi Ross
I have upgraded to the very latest Live555 server code and the new
Asynchronous Client Handler. We are using RTP-over-TCP. My server and
client work fine over a regular, low-latency connection, however, the
moment that latency increases somewhat, I am unable to get streaming
working. I get an error from the server "405 Method Not Allowed". Upon
inspecting the network traffic that the client sends to the server, I found
that the client is sending RTCP "RR" packets early, before the "PLAY"
command has been issued. As a result, the server gets confused and responds
with a "405 Method Not Allowed" error. This looks to be the exact issue
that the changelog shows as having been addressed in build 2012.10.04. This
problem still seems to remain, however.
The trace of client messages that I include below clearly illustrates the
problem:
##Client Sends:##
DESCRIBE rtsp://127.0.0.1:8554/ RTSP/1.0
CSeq: 2
User-Agent: LIVE555 Streaming Media v2013.08.16
Accept: application/sdp
##Client Receives:##
RTSP/1.0 200 OK
CSeq: 2
Date: Thu, Aug 29 2013 06:18:42 GMT
Content-Base: rtsp://127.0.0.1:8554/nurv/
Content-Type <http://127.0.0.1:8554/nurv/Content-Type>: application/sdp
Content-Length: 449
v=0
o=- 1377757120235695 1 IN IP4 192.168.56.1
s=MyVideo Streaming Session
i=nurv
t=0 0
a=tool:LIVE555 Streaming Media v2013.08.16
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:MyVideo Streaming Session
a=x-qt-text-inf:nurv
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:3750
a=rtpmap:96 H264/90000
a=control:track1
m=audio 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:84602240
a=rtpmap:96 PCMU/48000/2
a=control:track2
##Client Sends:##
SETUP rtsp://127.0.0.1:8554/nurv/track1 RTSP/1.0
CSeq: 3
User-Agent: LIVE555 Streaming Media v2013.08.16
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
##Client Receives:##
RTSP/1.0 200 OK
CSeq: 3
Date: Thu, Aug 29 2013 06:18:43 GMT
Transport: RTP/AVP/TCP;unicast;destination=127.0.0.1;source=127.0.0.1;interleaved=0-1
Session: 32A854D4
##Client Sends:##
SETUP rtsp://127.0.0.1:8554/nurv/track2 RTSP/1.0
CSeq: 4
User-Agent: LIVE555 Streaming Media v2013.08.16
Transport: RTP/AVP/TCP;unicast;interleaved=2-3
Session: 32A854D4
##THIS IS THE "OUT-OF-SEQUENCE RR DATA THAT CAUSES THE PROBLEM. THIS
SECTION IS ONLY SENT WHEN NETWORK HAS SOME LATENCY AND DOES NOT APPEAR
WHEN STREAMING WORKS.##
##Client Sends:##
00000000 24 01 00 20 $..
00000000 80 C9 00 01 23 7A EB 1D 81 CA 00 05 23 7A EB 1D ....#z......#z..
00000010 6C 61 70 74 6F 70 6E 61 6D 65 0D 0A 00 00 00 00 ..LaptopName....
##END OF SECTION THAT SHOWS THE "OUT-OF-SEQUENCE" DATA.##
##Client Receives:##
RTSP/1.0 200 OK
CSeq: 4
Date: Thu, Aug 29 2013 06:18:47 GMT
Transport: RTP/AVP/TCP;unicast;destination=127.0.0.1;source=127.0.0.1;interleaved=2-3
Session: 32A854D4
##Client Sends:##
PLAY rtsp://127.0.0.1:8554/nurv/ RTSP/1.0
CSeq: 5
User-Agent: LIVE555 Streaming Media v2013.08.16
Session: 32A854D4
Range: npt=0.000-
##THIS IS THE ERROR RECEIVED FROM THE SERVER. IN CASES WHERE STREAMING
WORKS, THIS ERROR IS NOT RECEIVED BUT WE RATHER START RECEIVING RTP
AND RTCP PACKETS (DATA) FROM THE SERVER AND STREAMING STARTS.##
##Client Receives:##
RTSP/1.0 405 Method Not Allowed
CSeq: 5
Date: Thu, Aug 29 2013 06:18:48 GMT
Allow: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER,
SET_PARAMETER
##Client Sends:##
TEARDOWN rtsp://127.0.0.1:8554/nurv/ RTSP/1.0
CSeq: 6
User-Agent: LIVE555 Streaming Media v2013.08.16
Session: 32A854D4
Thanks for looking!
Stanley
On Thu, May 30, 2013 at 5:20 PM, Ross Finlayson <finlayson at live555.com>wrote:
> Stanley,
>
> I haven't had time yet to review and respond to your emails. You should
> note, however, that the old 'synchronous' "RTSPClient" interface has now
> been removed completely - as of the latest version (2013.05.30) of the code
> - and is no longer supported, at all. (This old interface has been
> out-of-date for three years now.)
>
> So, you should upgrade to the latest version of the code, and fix your
> code to use the current, 'asynchronous' "RTSPClient" interface. Your
> server application should also be using the latest version of our code.
>
> Then, and only then, please let us know what problems - if any - you are
> having with your new server and client. (Please stop referring to archived
> mailing list messages; they are usually referring to old, different
> problems that are no longer relevant.)
>
> Ross Finlayson
> Live Networks, Inc.
> http://www.live555.com/
>
>
> _______________________________________________
> live-devel mailing list
> live-devel at lists.live555.com
> http://lists.live555.com/mailman/listinfo/live-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20130902/c8dae2a3/attachment.html>
More information about the live-devel
mailing list