<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
 --></style><title>Re: [Live-devel] Patch to liveMedia for
Consideration</title></head><body>
<blockquote type="cite" cite><font face="Arial" size="-1"
color="#000080">Attached is a patch file to liveMedia that I would
like to submit for consideration. It allows liveMedia to initiate an
RTSP session on an nCUBE/C-COR video server.&nbsp; The code that was
added is similar to the code currently in place for Kasenna and
Microsoft.</font></blockquote>
<div><br></div>
<div>Thanks for the submission.&nbsp; Unfortunately, however, I'm
getting increasingly reluctant to keep adding ugly hacks to the RTSP
client code in order to support all sorts of different weird,
non-standard servers.&nbsp; (I realize that - for historical reasons -
we already have ugly code there to support Kasenna servers; however,
I'd like to remove this at some point in the future (as these broken
old Kasenna servers fade into irrelevance).)</div>
<div><br></div>
<div>Our installed base (in VLC, MPlayer, and other RTSP clients) is
now sufficiently large (far larger than the installed base of any
particular RTSP server implementation) that I believe it's now
reasonable and appropriate for us to put pressure on these server
implementors to clean up their implementations to make them more
compliant with standards, and with other existing
implementations.</div>
<div><br></div>
<div>With this in mind, rather than add your patch to the code, I ask
that the implementors of the &quot;nCUBE/C-COR&quot; video server make
the following three simple changes to their implementation.&nbsp; If
they do this, their server should - I believe - work with the existing
&quot;LIVE555 Streaming Media&quot; RTSP client implementation - and
the large existing installed base of VLC (and MPlayer etc.)
clients:</div>
<div><br></div>
<div>1/ Change the SDP description returned in response to a RTSP
&quot;DESCRIBE&quot; command to say</div>
<div><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>RAW/RAW/UDP</div>
<div>&nbsp; instead of</div>
<div><x-tab>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</x-tab>RTP/AVP</div>
<div>&nbsp; (reporting &quot;RTP/AVP&quot; is very wrong, because the
server is quite clearly *not* sending RTP)</div>
<div><br></div>
<div>2/ Accept &quot;RAW/RAW/UDP&quot; in the &quot;Transport:&quot;
header of RTSP &quot;SETUP&quot; commands (rather than requiring that
the string &quot;MP2T/DVBC/UDP&quot; be used).</div>
<div><br></div>
<div>3/ Make whatever (presumably minor) fixes are necessary to the
server so that you don't need to modify the existing implementation of
the &quot;constructSubsessionURL()&quot; command.</div>
<x-sigsep><pre>-- 
</pre></x-sigsep>
<div><br>
Ross Finlayson<br>
Live Networks, Inc.<br>
http://www.live555.com/</div>
</body>
</html>