欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

最小RTSP协议实现的要求

程序员文章站 2022-07-03 08:10:54
最小RTSP协议实现的要求   项目中要做视频的RTSP流媒体支持,学习研究中。本文内容翻译自RTSP的RFC2326协议文档Appendix D: Minimal RTSP i...

最小RTSP协议实现的要求

 

项目中要做视频的RTSP流媒体支持,学习研究中。本文内容翻译自RTSP的RFC2326协议文档Appendix D: Minimal RTSP implementation节。 

一、客户端

必须实现: 

    1.实现请求:SETUP, TEARDOWN, PLAY/RECORD+ANNOUNCE 

    2.包含头:CSeq, Connection,Session, Transport.+(ANNOUNCE:Content-Language, Content-Encoding, Content-Length, and Content-Type) 

    3.解析响应头:CSeq,Connection, Session, Transport, Content-Language, Content-Encoding, Content-Length, Content-Type.+(RECORD:Location; RTP-compliant:RTP-Info) 

    4.识别并解析所有的响应错误代码,通知用户 

    5.可以异步地响应服务器的请求 

强烈推荐: 

    1.实现RTP/AVP/UDP的传输方式支持 

    2.请求中包含User-Agent头 

    3.识别SDP会话描述内容 

    4.以插件形式从标准输入、命令行等系统环境接收媒体初始化信息(如SDP) 

其它: 

    1.支持点播回放功能,必须实现:PAUSE请求、REDIRECT方法和Location头 

    2.支持认证功能,必须实现: 

        a.识别401状态码 

        b.解析和包含WWW-Authenticate头 

        c.基本身份验证和摘要式身份验证 

二、服务器

必须实现: 

    1.实现方法:SETUP, TEARDOWN, OPTIONS, PLAY(minial playback server)/RECORD+ANNOUNCE(minial recording server) 

    2.包含响应头: Connection,Content-Length, Content-Type, Content-Language, Content-Encoding,Transport, Public.+(RECORD:Location; RTP-compliant:RTP-Info) 

    3.正确响应请求头:Connection, Session, Transport, Require. 

强烈推荐: 

    1.实现RTP/AVP/UDP的传输方式支持 

    2.响应中包含Server头 

    3.实现DESCRIBE方法 

    4.生成SDP描述内容 

其它: 

    1.支持点播回放功能,必须实现: 

        a.识别Range头,如果定位失败返回错误信息 

        b.实现PAUSE方法 

        强烈推荐对于点播式流媒体服务器 

        c.Range头中支持NPT和SMPTE表示 

        d.在媒体初始化信息中包含媒体演示的长度 

        c.映射媒体的具体时间戳到NPT单元中,用以提供界面控制信息 

    2.支持客户认证功能,必须实现: 

        a.当请求的资源需要身份验证时,生成401状态码 

        b.解析和包含WWW-Authenticate头 

        c.基本身份验证和摘要式身份验证