[Live-devel] Live555 RTSP Client never sees RTCP BYE message from Live555 Server

Ross Finlayson finlayson at live555.com
Thu Mar 12 01:11:27 PDT 2009


>I'm pretty sure that this would happen with unmodified code, just 
>see if your bye handler is called in OpenRTSP after sending or a 
>teardown message while the source is still playing.

It is, *provided that* the original source file does not have a known 
duration.  When streaming from a live source, or from a file for 
which the server does not know the duration, the server sends a RTCP 
"BYE" packet when the input source ends.

However, when streaming from a file for which the server knows the 
file's duration (currently, MP3, .MPG, .TS and .AVI files), the 
server *does not* send a RTCP "BYE" packet when it reaches the end of 
the file.  The reason for this is to keep the stream alive, and 
therefore allow the client - if it desires - to continue playing the 
file, by seeking back within it and replaying from an earlier time. 
Because - in this case - the client was told the stream's duration 
beforehand, it doesn't need to see a RTCP "BYE" in order to know when 
it ends.

Note the code for the function "afterPlayingStreamState()" in 
"liveMedia/OnDemandServerMediaSubsession.cpp".

And yes, I've tested this on the installed code.

If you suspect a bug in the code, then please test this using the 
original, released code; not your modifications to the code.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


More information about the live-devel mailing list