* 包含 User-Agent 头部.
* 理解附件C中定义的 SDP 会话描述
* 接受从标准输入、命令行、及其他适合操作环境的效果如同一个程序(如web浏览器)的“帮助程序”的方式等,得来的媒体初始化式(例如 SDP)。
可能有些RTSP程序跟RTSP规范的创建者的预想不同,对于这些程序,上述要求并无意义。因此,上面的推荐仅作为指导,而非严的要求。
D.1.1 基本回放
为支持按需点播媒体流,客户端【必须】额外地支持:
*生成PAUSE请求
*实现REDIRECT方法及Location头部
D.1.2 鉴权-激活
为访问要求鉴权的RTSP服务器上的媒体表示,客户端【必须】额外地支持:
*识别401状态码
*解析并包括WWW-Authenticate头部
*实现基本鉴权和Digest鉴权
D.2 服务器
最小服务器实现【必须】能够做到:
*实现下列方法:SETUP, TEARDOWN, OPTIONS 以及PLAY (对于最小回放服务器) or RECORD (对于最小录制服务器)。如果实现RECORD, ANNOUNCE也应该实现。
*包含下列头部:Connection, Content-Length,Content-Type, Content-Language, Content-Encoding, Transport, Public。如果实现RECORD方法,也应实现包含Location头部的能力。RTP-compliant(RTP适应的)实现还应该实现RTP-info域。
*正确解析及响应请求中的下列头部:Connection, Session,Transport, Require。
虽然不是必需,但为了便于实际中同早期实现协同工作且/或成为“好市民”,在发布时仍强烈推荐实现下述功能。
* 实现 RTP/P/UDP,使其成为有效 transport。
* 包含 Server 头部。
* 实现DESCRIBE方法。
* 按附录C中的定义生成SDP会话描述。
可能有些RTSP程序跟RTSP规范的创建者的预想不同,对于这些程序,上述要求并无意义。因此,上面的推荐仅作为指导,而非严的要求。
D.2.1 基本回放
为支持媒体流按需点播,服务器【必须】额外地支持:
*识别Range头部,并在不支持搜索时返回error。
*实现PAUSE方法。
此外,为支持普遍接受的用户界面特性,高度推荐按需点播媒体服务器支持以下几点:
*包含并解析Range头部,使用 NPT单位。并推荐实现SMPTE单位。
*在媒体初始化信息中包含媒体表示的长度。
*包含从数据-相关 时间戳到NPT的映射。使用RTP时,用RTP-info域的rtptime部分来把RTP时间戳映射到NPT。
客户端实现可能会用length信息的出现与否来判断剪辑是否可搜索,并据此屏蔽没有length信息的剪辑的搜索特性。常见的表示长度的应用是实现一个“滑动条”,它即可以指示进度,又可以指示时间位置。
RTP时间戳到NPT的映射是必要的,以保证滑动条位置正确。
D.2.2 鉴权-激活
为正确处理客户端鉴权,服务器【必须】额外支持:
*当资源需要鉴权时生成401状态码
*解析并包括WWW-Authenticate头部
*实现基本鉴权和Digest鉴权
指此协议的发布方式,与本协议内容无关。
只提供控制层协议,不包括传输层
如视频会议等
言下之意乎是对于不同的媒体类型,Media parameter可能会不同?望高手指教。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47669-47.html
你知道吗