query =*( uchar | reserved )
fragment = *( uchar |reserved )
pchar= uchar | ":" | "@" |"&" | "=" | ""
uchar =unreserved | escape
unreserved = ALPHA | DIGIT |safe | extra | national
escape ="%" HEX HEX
reserved =";" | "/" | "?" | ":" | "@" |"&" | "=" | ""
extra ="!" | "*" | "'" | "(" | ")" |","
safe= "$" | "-" | "_" |"."
unsafe = CTL| SP | <"> | "#" | "%" | "<" |">"
national = <anyOCTET excluding ALPHA, DIGIT,
reserved, extra, safe, and unsafe>
权威的URL语法及语义信息请参见RFC1738[4]和RFC1808[9]。
********************
注意:fragment和query标识符在这时没有明确的定义,需要到RTSP服务器上解释。
rtsp前缀要求使用可靠协议(在Internet上指TCP协议)发出命令,而rtspu前缀则说明使用不可靠协议(在Internet指UDP协议)。
如是端口为空或没指定,则缺省为554端口。语义如下:拥有被请求的资源的服务器主机通过TCP连接(rtsp方案)或主机上相应端口的UDP包(rtspu方案),来控制所标记的资源。资源的请求URI是rtsp_URL。
应尽可能避免在URL中直接使用IP地址。(请参考RFC1924)
一个表示或者流是通过基于文本的媒体标记来标识的,此媒体标记使用URLs (RFC 1738 [20])中的字符集和转义规则[H3.2]。URLs可以指向一个流或者一个流的集合,即是说,一个表示。请求视情况可以指向一个完整的表示或者表示中的单个流,见第十章。注意,某些请求方法只能用于流,而不能用于表示,反之亦然。
例如:RTSP URL:
rtsp://media.example.com:554/twister/audiotrack
标识了表示"twister"中的音频流,它可以通过发送基于TCP连接的RTSP请求至主机media.example.com的554端口进行控制。
也可以是这样RTSP URL:
rtsp://media.example.com:554/twister
标识了表示"twister",它可能是由音频和视频流组成的。
这里并没有暗示相关流URL的标准。表示的结构关系和各个流的URL在表示描述中定义。如一个表示描述可能将一个流命名为a.mov,而将整个表示命名为b.mov。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47669-9.html
26在哪里