[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