Re: Format of RTSP URLs

At 01:09 PM 7/17/97 +1000, Bill Simpson-Young wrote:
>robla wrote:
>> C->S  DESCRIBE rtsp://foo/db/moviebase?movie=twister RTSP/1.0 1
>> 
>> S->C  RTSP/1.0 200 1 OK
>>       Content-length: 178
>>       Content-type: application/sdp
>> 
>>       s= sample rtsp presentation
>>       r = rtsp://foo/db/moviebase?movie=twister   /* aggregate URL*/
>>       m= audio 0 RTP/AVP 0
>>       r = :track=audio1                           /* URL to control audio*/
>>       m=video 0 RTP?AVP 26
>>       r = :track=video1                           /* URL to control video*/
>
>I don't think this example would be a common one as surely, in practice, 
>HTTP will be used to retrieve the SDP info rather than RTSP.  

I very sincerely beg to differ.  In practice, there are a lot of datatypes
that need more initialization information than you would expect a content
author to get right in their hand-authored portion.  This is bound pretty
intricately to the media file itself, and therefore should be served by the
media server.  This is in fact how we are implementing this (and have
implemented it in our RealMedia developer betas).

This idea was brought up once before on confctrl, in a message from Brad
Hefta-Gaub, one of our RealMedia development leads:

http://www.mbone.com/lists/confctrl.1997/0339.html

>If I'm right, then this will have an impact on relative URLs specified in 
>SDP (or some XML version of it) as they would be HTTP URLs not RTSP ones 
>unless some form of base tag is used in the SDP data. Either way I agree 
>with Roy about the specification of tracks using the path itself (using 
>"/").  So, regardless of whether we're using container file formats or 
>separate tracks in separate files, the respective URLs could be:
>
>http://foo/db/moviebase/twister          (for the bootstrapping info)
>rtsp://foo/db/moviebase/twister/video1
>rtsp://foo/db/moviebase/twister/audio1
>
>and we could have the following (using an imaginary XML DTD for the 
>bootstrapping info):
>
>C->S  GET http://foo/db/moviebase/twister HTTP/1.1
>
>(if this was from a query you would have had a redirect stage before this 
>as suggested by Roy)
>
>S->C  HTTP/1.1 200 1 OK
>      Content-length: 178
>      Content-type: text/foo
>
>      <?XML version="1.0"?>
>      <!DOCTYPE foo SYSTEM "http://foo/foo.dtd">
>      <session base="rtsp://foo/db/moviebase/twister"/>
>      <summary>Sample RTSP Presentation</summary>
>      <media type="audio" location="audio1" ... />
>      <media type="video" location="video1" ... />
>      </session>

There is a lot of work going on in this area.  We have an SGML-based
metafile language that looks very similar to this actually called RTSL
which is included in the RealMedia SDK (see http://www.real.com/rma for
more details).  However, we don't require content authors to place all of
the media initialization information into their presentations, which leads
us to rely on DESCRIBE to get the bulk of the parameters.  We instead use
this metafile as a means of providing high-level sequencing, selection, and
synchronization, and for mapping stream components onto layout components.

Rob

Received on Thursday, 17 July 1997 01:18:11 UTC