转:SDP介绍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转:SDP介绍相关的知识,希望对你有一定的参考价值。

SDP:session description protocol。绘画描述协议

SDP描述主要包括:会话名、会话目的、会话有效时间、构成会话的媒体及接受这些媒体的信息 (地址、端口、格式)等等 。

1.概述
SDP也是MMUSIC工作组的一个产品,在MBONE内容中用得很多。其目的就是在媒体会话中,传递媒体流信息,允许会话描述的接收者去参与会话。SDP基本上在internet上工作。他定义了会话画描述的统一格式,但并不定义多播地址的分配和SDP消息的传输,也不支持媒体编码方案的协商,这些功能均由下层传送协议完成.典型的会话传送协议包括:SAP(Session Announcement Protocol 会话公告协议),SIP,RTSP,HTTP,和使用MIME的E-Mail.(注意:对SAP只能包含一个会话描述,其它会话传诵协议的SDP可包含多个绘画描述)

SDP包括以下一些方面:
1)会话的名称和目的
2)会话存活时间
3)包含在会话中的媒体信息,包括:
    媒体类型(video, audio, etc)
    传输协议(RTP/UDP/IP, H.320, etc)
    媒体格式(H.261 video, MPEG video, etc)
    多播或远端(单播)地址和端口
4)为接收媒体而需的信息(addresses, ports, formats and so on)
5)使用的带宽信息
6)可信赖的接洽信息(Contact information)
7)等。。。

2.协议:
Session description                 //格式及举例
v=  (protocol version)             //v=0
o=  (owner/creator and session identifier).   
                                             //o=<用户名><会话id><版本><网络类型><地址类型><地址>
                                             //o=sname 1234567890 0987654321 I IP4 126.15.64.3
s=  (session name)                 //会话名
i=* (session information)        //会话信息
u=* (URI of description)         //u=http://www.zte.com.cn/staff/sdp.ps
e=* (email address)               //[email protected](general text如:王生)
                                            //或e=Mr. Wang<[email protected]>
p=* (phone number)             //p=+86-0755-26773000-7110(wang) or p=+1 617 253 6011
c=* (connection information -如已经包含在所有媒体中则该行不需要)
                                           //c=<网络类型><地址信息><连接地址>
                                           //多点会议包括TTL
                                           //连接地址: <base multicast address>/<ttl>/<number of addresses>
                                           //c=IN IP4 224.2.13.23/127
                                           //c=IN IP4 224.2.1.1/127/3
b=* (bandwidth information) //b=<修改量(CT Conference Total
                                           //IAS Application-specific Max)>:<带宽值(kb/s)>
                                           //b=CT:120

One or more time descriptions (see below)
z=* (time zone adjustments)                        //时区调整
k=* (encryption key)                                   //k=<方法>:<密钥>或k=<方法>
a=* (zero or more session attribute lines)     //a=<属性>  或a=<属性>:<值>
                                                                        
Zero or more media descriptions (see below)     
各行严格按顺序,其中:
时间描述:
t=  (time the session is active)    //<开始时间><结束时间>,单位秒,十进制NTP
                                                                        //t=2873397468 2873404969
r=* (zero or more repeat times)     //<重复时间><活动持续时间以开始时刻为参考的偏移列表>单位秒
                                                                        //r=604800 3666 90000 或写成r=7d 1h 0 25h

媒体描述:
m=  (media name and transport address)    
                                                                        //m=<媒体><端口><传送><格式列表>
                                    //m=audio 49170 RTP/AVP 0 3
                                    //协议为RTP,剖面为AVP
                                    //参考rtp-parameters.txt
i=* (media title)                           //媒体称呼
c=* (connection information – 如已经包含在会话级描述则为可选)
b=* (bandwidth information)         //同c
k=* (encryption key)                //会话级为摸认值,同c
a=* (zero or more media attribute lines)              
                                                                        //两种形式:(也同c)(见后说明)
                                    //a=<attribute>如:
                                    //     a=recvonly
                                    //a=<attribute>:<value>
注:v,o,s,t,m为必须的,其他项为可选。
         如果SDP语法分析器不能识别某一类型(Type),则整个描述丢失;
         如果”a=”的某属性值不理解,则予以丢失
         整个协议区分大小写
         “=”两侧不允许有空格
         会话级的描述就是媒体级描述的缺省值
         所有均格式为<type>=<value>
        An example SDP description is:

        v=0
        o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4
        s=SDP Seminar
        i=A Seminar on the session description protocol
        u=http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps
        [email protected] (Mark Handley)
        c=IN IP4 224.2.17.12/127
        t=2873397496 2873404696
        a=recvonly
        m=audio 49170 RTP/AVP 0
        m=video 51372 RTP/AVP 31
        m=application 32416 udp wb
        a=orient:portrait

 

以上是关于转:SDP介绍的主要内容,如果未能解决你的问题,请参考以下文章

JavaCV音视频开发宝典:rtsp转推到rtp(非TS流方式),及使用TS流发送解决sdp缺失问题

JavaCV音视频开发宝典:rtsp转推到rtp(非TS流方式),及使用TS流发送解决sdp缺失问题

WebRTC 核心功能介绍--一篇读懂SDP PlanB UnifiedPlan(从PlanB迁移到UnifiedPlan)

SDP软件快速开发平台 ---- 开发平台详细介绍

SDP协议基本分析(RTSPWebRTC使用)

SDP协议基本分析(RTSPWebRTC使用)