<html><head><base href="x-msg://3011/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><span class="Apple-style-span" style="font-family: Calibri, sans-serif; font-size: 15px; ">Any ideas, what could be causing my FramedSource class to self-destruct every 60 seconds? This must be some kind of timeout.</span></blockquote><div><br></div>Exactly. The server is timing out the client connection (and reclaiming its state: sockets, ports, and memory) because it is not seeing any sign of activity from the client within the timeout period (which, by default, is actually 65 seconds, not 60 seconds).</div><div><br></div><div>The problem is your client. It is apparently not sending any periodic RTCP "RR" packets - which it is supposed to do as per the RTP/RTCP standard. (Alternatively, if the client were periodically sending certain 'no-op' RTSP commands - such as "GET_PARAMETER", then the server would also treat that as a sign of client 'liveness', and not timeout the connection.)</div><div><br></div><div>The solution is to fix your "3rd party client software package" so that it sends RTCP "RR" packets, as it is supposed to. (Alternatively, just use our RTSP/RTP/RTCP client implementation, which works properly :-)</div><div><br></div><div>If you *really* want to avoid the timeout, without fixing your client, then you can do so by setting the (otherwise optional) "reclamationTestSeconds" parameter in "RTSPServer::createNew()" to 0. I don't recommend this, however, because then the server will have no way of reclaiming state from a client that dies without doing a RTSP "TEARDOWN".</div><div><br></div><div><br><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div lang="EN-GB" link="blue" vlink="purple"><div class="WordSection1" style="page: WordSection1; "><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><o:p></o:p></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">Why does this not happen for VLC client connections?</div></div></div></span></blockquote></div><br><div>Because VLC properly sends periodic RTCP "RR" packets.</div><br><br><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br></body></html>