[Live-devel] RTP over RTSP: client sending RR "early"

Ralf Globisch rglobisch at csir.co.za
Thu Aug 30 03:28:48 PDT 2012


Hi Ross,We've run into a new issue using RTP over RTSP mode over Edge and really slow wireless connections. 
This happens in our client application (that was based on openRTSP) as well as in VLC, which 
also uses live555.


In the case where the TCP connection is really slow, it can happen that the client sends the first RR
before the client and server have completed the entire RTSP interchange i.e. before the client has read 
the response to PLAY. In this case the server reads the RR, but since the TCP connection handler is 
in the incorrect state, the server responds with a "method not allowed". 


There are a couple of ways to fix this though I would assume that the problem is on the client side.
Please could we have your input since you know the code best.


1) The server could of course be made more robust by detecting the '$' char and ignoring such requests.
Would this work as a quick fix?



2) The (more correct?) approach would be to only allow the client to send an RR after it has received a PLAY response.
The RTCPInstance is created in MediaSubsession::initiate which IIRC happens after the client receives the DESCRIBE
response. I don't know the code well enough to see how to fix it. Should the creation of the RTCPInstance be deferred until 
after the PLAY has been received? Any pointers/advice would be appreciated.


Regards,
Ralf


-- 
This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. 
The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html.

This message has been scanned for viruses and dangerous content by MailScanner, 
and is believed to be clean.

Please consider the environment before printing this email.




More information about the live-devel mailing list