<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div><blockquote type="cite"><div dir="ltr"><div>I have developed a RTSP server based on the example found in testOnDemandRTSPServer.cpp. The application can stream data from files and also from different live sources (to do that i'm using an RTSP client which i developed some time ago, also based on the Live555 library).</div></div></blockquote><div><br></div>FYI, you could also use our "testRTSPClient" demo application for this.  It can stream from multiple "rtsp://" URLs concurrently.</div><div><br></div><div><br><blockquote type="cite"><div dir="ltr">
<div>I have implemented my own "FramedSource" subclass and differents subclasses of "OnDemandServerMediaSubsession" depending on the video encoding.<br><div><br></div><div>The application works fine when just one client is connected to the server, even with high resolution videos. However, when more clients connect to the different sessions added to the RTSPServer instance of my server, the performance decreases a lot.</div>
<div><br></div><div>I am talking that just with two clients connected, the rate at which the server stream the input of two different sources is really low.</div><div><br></div><div>There is no network problem, this happens also in a local scenario (server and clients running in the same machine).</div>
<div><br></div><div>The %CPU and memory used by the server are very low also, so, the problem does not come from the machine running the server.</div></div></div></blockquote><div><br></div>That's strange.  I suspect that the problem is (somehow) related to your 'data source' implementation - i.e., your "FramedSource" subclass.</div><div><br></div><div>What happens when you don't just 'base' your server on "testOnDemandRTSPServer", but actually use the (original, unmodified) "testOnDemandRTSPServer" code?  What happens when two clients request the same stream (from a file)?  And do things change at all when you change your server to use a single input source for all concurrent clients - i.e., if you change line 29 of "testOnDemandRTSPServer.cpp" to</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>Boolean reuseFirstSource = True;</div><div>?</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;  "><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;  ">Ross Finlayson<br>Live Networks, Inc.<br><a href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br></body></html>