<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Several people have had trouble developing their own RTSP client applications using the LIVE555 code, and this is partly my fault, because "openRTSP" - the only RTSP client application code that we've made available - is not a very good model for how to write a RTSP client application, for several reasons:</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>1/ "openRTSP" is quite complex, with several command-line options for a lot of rather obscure functionality.</div><div><span class="Apple-tab-span" style="white-space:pre">       </span>2/ "openRTSP" shares a lot of code with the "playSIP" application - and this makes the code hard to understand.</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>3/ The "openRTSP" code was specifically designed to be a complete, standalone application - not something that would be embedded into another application.</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>4/ Because "openRTSP" was designed to be a standalone application for streaming one "rtsp://" URL, it does not illustrate how you could stream *multiple* "rtsp://" URLs concurrently from within the same (single-threaded) application.</div><div><br></div><div>To fix this, I've given you all a Christmas present: A new demo application (in the "testProgs" directory) called "testRTSPClient".</div><div><br></div><div>"testRTSPClient" is simple:  It takes one or more "rtsp://" URLs as command-line arguments, and streams each URL, concurrently.  Unlike "openRTSP", it has no command-line options.  Also, unlike "openRTSP", it doesn't output (or do anything else with) the audio/video data that it receives; it just receives the data into a buffer (and outputs - to the console - a message describing what was received).</div><div><br></div><div>I.e., unlike "openRTSP", "testRTSPClient" is not very useful as an application by itself.  It's main purpose is to illustrate how you, as an application developer, can use the "RTSPClient" interface within your own application.</div><div><br></div><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>