sdp协议详解
sdp协议会话格式
sdp协议会话格式SDP协议(Session Description Protocol)定义了一种会话描述的格式,用于在多媒体会话中传输音频、视频和其他相关的会话信息。
SDP协议是一种文本协议,其会话格式可以参考以下内容:1. 协议版本(V): 表示SDP协议的版本号,常见的为v=0。
2. 原点者(Origin): 表示会话发起者的身份信息,包括用户名、会话ID、版本号和网络地址等。
其格式为: o=<username><session id> <session version> <net type> <address type><network address>3. 会话名称(S): 表示会话的名称,通常用一个字符串来描述。
其格式为: s=<session name>4. 会话信息(I): 用于提供有关会话的额外信息,如会议议程或相关说明。
其格式为: i=<session description>5. URI链接(U): 提供会话的URL链接,指向一个相关源。
其格式为: u=<uri>6. 会话连接(C): 表示参与会话的连接地址和网络类型。
其格式为: c=<net type> <address type> <connection address>7. 媒体描述(M): 描述会话中各种媒体流的类型、传输协议和媒体格式等信息。
其格式为: m=<media> <port> <transport><format>8. 媒体名称(a): 表示媒体流的名称或标签。
其格式为:a=<attribute>9. 音频属性(a=audio): 描述音频流的相关属性,如采样率、编解码器和通道数等。
其格式为: a=rtpmap:<payload type><encoding name>/<clock rate>[/<encoding parameters>]10. 视频属性(a=video): 描述视频流的相关属性,如视频编码格式和帧率等。
rtsp和sdp协议简介
rtsp和sdp协议简介RTSP是由Real network 和Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议。
实时流协议(RTSP)建立并控制一个或几个时间同步的连续流媒体,如音频和视频。
尽管连续媒体流与控制流交叉是可能的,RTSP 本身并不发送连续媒体流。
换言之,RTSP 充当多媒体服务器的网络远程控制。
RTSP 提供了一个可扩展框架,实现实时数据(如音频与视频)的受控、按需传送。
数据源包括实况数据与存储的剪辑。
RTSP 用于控制多个数据发送会话,提供了选择发送通道(如UDP、组播UDP 与TCP 等)的方式,并提供了选择基于RTP 的发送机制的方法。
目前还没有RTSP 连接的概念;服务器维护由识别符标识的会话。
RTSP 会话不会绑定到传输层连接,如TCP。
在RTSP 会话期间,RTSP 客户端可打开或关闭多个对服务器的可靠传输连接以发出RTSP 请求。
它也可选择使用无连接传输协议,如UDP。
RTSP 控制的流可能用到RTP,但RTSP 操作并不依赖用于传输连续媒体的传输机制。
RTSP 在语法和操作上与HTTP/1.1 类似,因此HTTP 的扩展机制在多数情况下可加入RTSP。
然而,在很多重要方面RTSP 仍不同于HTTP :∙RTSP 引入了大量新方法并具有一个不同的协议标识符:∙在大多数情况下,RTSP 服务器需要保持缺省状态,与HTTP 的无状态相对;∙RTSP 中客户端和服务器都可以发出请求;∙在多数情况下,数据由不同的协议传输;∙RTSP 使用ISO 10646 (UTF-8)而并非ISO 8859-1,与当前的国际标准HTML 相一致;∙URI 请求总是包含绝对URI。
为了与过去的错误相互兼容,HTTP/1.1 只在请求过程中传送绝对路径并将主机名置于另外的头字段。
该协议支持如下操作:∙从媒体服务器上检索媒体:用户可通过HTTP 或其它方法提交一个演示描述请求;∙媒体服务器邀请进入会议:媒体服务器可被邀请参加正进行的会议,或回放媒体,或记录部分或全部演示;∙将新媒体加到现有演示中:如服务器能告诉客户端接下来可用的媒体内容,对现场直播显得尤其有用。
SDP协议简述
SDP协议简述SDP协议也是⽂本协议,只需要按照协议本⾝的格式填充。
SDP协议格式即详细信息如下:会话描述格式及举例v=(protocol version)v=0o=(owner/creator and session identifier)o=⽤户名会话id版本⽹络类型地址类型地址o=hua 253183 51827 IN IP4 192.168.2.2s=(session name)会话名i=*(session information)会话信息e=*(email address)e=zte@(generaltext或e=Mr.Wangp=*(phone number)p=+86-0755-********-7110(wang)orp=+16172536011c=*(connection information-如已经包含在所有媒体中则该⾏不需要)c=⽹络类型地址信息多点会议包括TTL连接地址c=IN IP4 192.168.2.2c=IN IP4 192.168.2.23b=*(bandwidthinformation)b=修改量(CTConferenceTotalIASApplication-specificMax):带宽值(kb/s)b=CT:120⼀个或更多时间描述z=*(time zone adjustments)时区调整k=*(encryption key)k=⽅法:密钥或k=⽅法时间描述t=(timethesessionisactive)开始时间、结束时间,单位秒,⼗进制NTPt=2873397468 2873404969r=*(zero or more repeat times)重复时间、活动持续时间以开始时刻为参考的偏移列表,单位秒媒体描述m=(media name and transportaddress)m=媒体端⼝、传送格式列表m=audio 49170 RTP/AVP 0 3协议为RTPi=*(mediatitle)媒体称呼c=*(connectioninformation)如已经包含在会话级描述则为可选b=*(bandwidthinformation同ck=*(encryptionkey)会话级为摸认值,同ca=*(zero or more session attributelines)a=属性或a=属性:值a=sendrecva=ptime:20a=rtpmap:0 PCMU/8000说明:1. v,o,s,t,m为必须的,其他项为可选;2.如果SDP语法分析器不能识别某⼀类型(Type),则整个描述丢失;3.如果“a=”的某属性值不理解,则予以丢失;4.整个协议区分⼤⼩写;5. “=”两侧不允许有空格;6.会话级的描述就是媒体级描述的缺省值;7.所有格式均为=。
RFC2327(sdp)中文
SDP: Session Description Protocol(会话描述协议)(RFC2327)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)2.协议Session description //格式及举例v= (protocol version) //v=0o= (owner/creator and session identifier). //o=<用户名><会话id><版本><网络类//型><地址类型><地址>//o=sname 1234567890 0987654321 IN//IP4 126.15.64.3s= (session name) //会话名i=* (session information) //会话信息u=* (URI of description) //u=/staff/sdp.pse=* (email address) //e=zte@(general text如:王生)//或e=Mr. Wang<wang@> p=* (phone number) //p=+86-0755-********-7110(wang)//or p=+1 617 253 6011c=* (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/3b=* (bandwidth information) //b=<修改量(CT Conference Total//IAS Application-specific Max)>:<带宽//值(kb/s)>//b=CT:120One 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 2873404969r=* (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/A VP 0 3//协议为RTP,剖面为A VP//参考rtp-parameters.txti=* (media title媒体称呼) //c=* (connection information –如已经包含在会话级描述则为可选)b=* (bandwidth information) //同ck=* (encryption key) //会话级为摸认值,同ca=* (zero or more media attribute lines) //两种形式:(也同c)(见后说明)//a=<attribute>如:// a=recvonly//a=<attribute>:<value>注:v,o,s,t,m为必须的,其他项为可选。
会话描述协议(SDP)简介
2013-7-11
深圳市格林耐特通信技术有限公司
4
3. 会话广告(Session Advertisement ) 是一种传达给用户的会话描述的装置 4. 会话宣告(Session Announcement ) 与会话广告同 5. 会话描述(Session Description ) 为在发现与参与多媒体会话中传达充分信息而定义 的一种格式
GreenNET
2013-7-11
深圳市格林耐特通信技术有限公司
9
说明: 这些地址和端口依赖与媒体和协议的定义,根据默 认,这些地址与端口是数据发送的远程地址与端口,和 接收这些媒体的远程地址与本地端口。 (2)同步信息 SDP可以传输: • 任意关于跳跃的会话的开始和结束时间列表 • 对于每一跳,重复的次数 说明: 这些同步信息是全局一致的,与本地时域和夏令时 无关 。
其中, text payload部分是SDP 的会话描述,最大不 能超过1 Kbyte 。
GreenNET
2013-7-11
深圳市格林耐特通信技术有限公司
6
(2)E-mail和WWW宣告 会话描述传送包括E-mial和World Wide Web。 即收到E-mail或WWW宣告的用户才能够接收媒体流。
GreenNET
2013-7-11
深圳市格林耐特通信技术有限公司
10
(3)私人会话 一个声明为私人的会话必须传输对媒体解密的密钥 ,包括每个媒体加密方法的足够信息。 (4)获得关于会话的远程信息 是否参与会话的信息。 (5)Categorisation SDP支持categorisation 机制。 (6)国际化(Internationalization )
t=会话活动时间(time the session is active) r=*零或多次重复时间(zero or more repeat times)
.vlc的sdp文件解析和课程总结
《.VLC的SDP文件解析和课程总结》一、前言在我们日常使用的多媒体播放器中,.VLC应该是使用频率最高的之一。
它的强大功能和良好的用户体验赢得了广大用户的喜爱。
而在使用.VLC时,我们经常会接触到SDP文件,这个文件在.VLC的使用中扮演着非常重要的角色。
本文将围绕.VLC的SDP文件解析展开讨论,并在文章结尾对所学内容进行总结和回顾。
二、.VLC的SDP文件解析1. 什么是SDP文件SDP的全称是Session Description Protocol,即会话描述协议。
它是一种用来描述多媒体会话的格式。
在.VLC中,SDP文件通常用来描述流媒体服务器上的音频和视频会话信息,包括音频和视频的编解码器、传输协议、媒体格式等。
2. SDP文件的作用SDP文件在.VLC中的作用主要有两方面。
它可以告诉.VLC媒体服务器上媒体流的详细信息,帮助.VLC正确地解析和播放媒体文件。
另SDP文件还可以帮助.VLC建立和维护多媒体会话,确保音视频数据的传输和同步。
3. 如何解析SDP文件.VLC可以通过打开SDP文件或者输入SDP文件的URL来解析SDP 文件。
在.VLC中,打开菜单中有一个“打开网络串流”的选项,用户可以在这里输入SDP文件的URL进行解析。
另外,用户还可以直接打开保存在本地的SDP文件,.VLC也会自动进行解析和处理。
4. SDP文件解析与处理在.VLC解析SDP文件之后,它会根据文件中的描述信息来设置音视频流的参数。
这些参数包括但不限于音视频编解码器、媒体格式、传输协议等,确保媒体流能够被正确地解码和播放。
三、课程总结通过本次学习,我对.VLC的SDP文件有了更深入的了解。
我学会了SDP文件的基本概念和作用,以及在.VLC中如何解析和处理SDP文件。
我也清晰地认识到SDP文件在.VLC的使用中的重要性,它直接影响着音视频会话的质量和效果。
在总结本次课程时,我认为理解SDP文件不仅有助于我更好地使用.VLC,还能够提升我对多媒体会话的理解和应用能力。
sdp协议
sdp协议SDP(Session Description Protocol)是会话描述协议,它是一种用于描述多媒体会话参数的文本协议。
SDP协议定义了一种用于描述Internet多媒体会话的标准格式,使得会话参与者之间可以交换信息,并最终协商出一个共同的会话配置。
SDP协议主要用于在实时通信系统(如VoIP、视频通话等)中进行会话的建立和配置。
它描述了会话中涉及的多媒体流的类型、媒体格式、媒体传输地址、网络传输配置以及其他相关参数。
SDP协议的消息体采用文本格式,每个字段都有特定的标识符,通过这些标识符可以识别每个字段所描述的内容。
协议中定义了一些常见的字段,如会话名称、媒体类型、传输协议、地址等。
SDP协议的使用流程如下:1. 会话发起方发送SDP消息,描述自己的会话需求和配置参数。
2. 会话接收方收到SDP消息后,解析其中的字段,并根据自身的会话配置进行响应。
3. 双方可以通过交换SDP消息进行协商,以确定最终的会话配置。
SDP协议的一大优点是可扩展性。
它定义了一个灵活的格式,可以通过添加新的字段来描述新的需求,并且可以通过规定规则来处理未知的字段。
这使得SDP协议适用于各种不同类型的多媒体会话。
SDP协议在实时通信系统中的应用非常广泛。
它可以用于描述音视频通话、会议、直播等各种类型的会话。
通过交换SDP消息,参与者可以协商出最合适的会话配置,从而实现高质量的实时通信。
然而,SDP协议也存在一些问题。
首先,由于协议采用文本格式,消息体相对较大,传输效率较低。
其次,由于协议可扩展性较强,协商过程可能会变得复杂,增加了实现的难度。
总的来说,SDP协议作为一种用于描述多媒体会话参数的文本协议,为实时通信系统的会话建立和配置提供了标准化的方式。
它的应用范围广泛,并且具有一定的可扩展性,但也存在一些问题。
随着实时通信技术的不断发展,SDP协议可能会逐渐演化为更高效、更灵活的协议。
sdp协议会话格式
SDP协议会话格式一、什么是SDP协议SDP(Session Description Protocol)是一种用于描述会话参数的协议,常用于多媒体会话的初始化、修改和终止。
SDP协议定义了一种文本格式,用于描述会话的媒体类型、传输协议、媒体格式、网络地址等信息,以便参与者之间可以进行媒体的交换和传输。
二、SDP协议会话格式的组成SDP协议会话格式由多个部分组成,包括会话层、媒体层和属性层。
1. 会话层会话层包括会话名称、会话信息、会话连接信息和会话带宽。
会话名称用于标识会话的唯一性,会话信息用于描述会话的目的和内容,会话连接信息用于指定会话的传输地址和端口,会话带宽用于指定会话的带宽要求。
2. 媒体层媒体层包括媒体类型、传输协议、媒体格式、媒体连接信息和媒体带宽。
媒体类型用于指定媒体的类型,如音频、视频等,传输协议用于指定媒体的传输协议,如RTP、RTSP等,媒体格式用于指定媒体的编码格式,如PCM、H.264等,媒体连接信息用于指定媒体的传输地址和端口,媒体带宽用于指定媒体的带宽要求。
3. 属性层属性层包括会话级属性和媒体级属性。
会话级属性用于指定会话的全局属性,如会话的起始时间、结束时间等,媒体级属性用于指定媒体的特定属性,如媒体的编码参数、传输参数等。
三、SDP协议会话格式的示例下面是一个SDP协议会话格式的示例:v=0o=- 0 0 IN IP4 127.0.0.1s=SDP Examplei=SDP Example Sessionc=IN IP4 127.0.0.1b=AS:1000t=0 0m=audio 5004 RTP/AVP 0a=rtpmap:0 PCMU/8000a=sendonlym=video 5006 RTP/AVP 96a=rtpmap:96 H264/90000a=fmtp:96 profile-level-id=4D401E; packetization-mode=1在上述示例中,v表示协议版本,o表示会话的创建者和会话ID,s表示会话名称,i表示会话信息,c表示会话的连接信息,b表示会话的带宽要求,t表示会话的起始时间和结束时间,m表示媒体类型、传输协议、传输地址和端口,a表示属性信息,如媒体的编码格式、传输方式等。
sdp会话描述协议详解
sdp会话描述协议详解
SDP(Session Description Protocol)是一种文本协议,用于描
述会话中多媒体会话的方式和参数。
它由IETF标准化,并被
广泛用于多媒体会话的建立和控制。
SDP可以描述多媒体会话的各个方面,包括媒体类型、媒体
格式、媒体流的传输地址等。
它提供了一种统一的格式,使各端设备(如计算机、网络电话、视频会议终端等)能够在会话开始之前就了解会话的属性和要求。
SDP会话描述协议包括以下重要部分:
1. 会话信息:描述会话的整体信息,包括会话名称、创建者的电话号码等。
2. 时间描述:描述会话的时间限制信息,包括会话的起始时间和结束时间。
3. 媒体描述:描述会话中的媒体流信息,包括媒体类型(如音频、视频、文本等)、媒体格式(如编码方式、传输协议等)、传输地址等。
4. 媒体属性:描述会话中的媒体属性信息,包括媒体流的带宽要求、编解码器的参数等。
SDP协议使用简单的文本格式,易于阅读和解析。
它可以通
过各种协议(如SIP、RTSP等)进行传输和交换,从而实现
多媒体会话的建立和控制。
SDP的应用广泛,包括语音通话、视频会议、实时流媒体等领域。
它能够提供清晰的会话描述,提高会话的互操作性和扩展性,为多媒体应用提供了一个标准化的描述和交换方式。
SDP协议——精选推荐
SDP协议⼀、SDP协议介绍SDP(Session Description Protocol)它只是⼀种信息格式的描述标准,本⾝不属于传输协议,但是可以被其他传输协议⽤来交换必要的信息。
包括会话通知协议(SAP)、会话初始协议(SIP)、实时流协议(RTSP)、MIME 扩展协议的电⼦邮件以及超⽂本传输协议(HTTP)。
SDP协议是也是基于⽂本的协议,这样就能保证协议的可扩展性⽐较强,这样就使其具有⼴泛的应⽤范围。
SDP 不⽀持会话内容或媒体编码的协商,所以在流媒体中只⽤来描述媒体信息。
媒体协商这⼀块要⽤RTSP来实现.流媒体协议sdp信息,附带在describe报⽂中有rtsp服务端发出,主要⽬的,告之会话的存在和给出参与该会话所必须的信息,sdp会话完全是⽂本形式,采⽤UTF-8编码的ISO 10646字符集sdp描叙符包括:会话名和⽬的会话激活的时间区段构成会话的媒体接收这些媒体所需要的信息(地址,端⼝,格式)会话所⽤的带宽信息会话负责⼈的联系信息会话层信息:会话的名称和⽬的会话的存活时间会话中包含的多个媒体信息媒体信息包括:媒体类型(视频,⾳频等)传送协议(RTP/UDP/IP H.320等)媒体格式(H,264视频,MPEG视频等)媒体地址和端⼝⼆、SDP协议格式<type> = < value > [CRLF]SDP描述由许多⽂本⾏组成,⽂本⾏的格式为<类型>=<值>,<类型>是⼀个字母,<值>是结构化的⽂本串,其格式依<类型>⽽定。
type: 该字节为单字节(如: v,o, m等)区分⼤⼩写,=号俩侧部允许有空格value: 为结构化⽂本串会话描叙格式介绍协议版本:(protocol version)v=0 给出sdp的版本号,⽬前为0版本,⽆⼦版本号会话源:(owner/create and session identifier) o=(⽤户名)(会话标识)(版本)(⽹络类型)(地址类型)(地址) 如果不存在⽤户登录名,该字段标志位“-” , 会话标识为⼀随机数字串版本为该会话公告的版本, ⽹络类型为⽂本串,“IN”表⽰internet 地址类型为⽂本串,⽬前定义为“IP4”和“IP6”两种地址会话名:(session name) s=(会话名) 每个会话描述必须只有⼀个会话,s=-表⽰忽略会话名会话信息:() i=(会话信息) 此字段并⾮必须,建议包括进来⽤于描叙相应会话⽂字性说明,每个会话描叙最多只能有⼀个URL: u=(URL) 此字段并⾮必须,提供url的描叙信息连接数据:* (conn info - optional if included at session-level) c=(⽹络类型)(地址类型)(连接地址) 如:c = IN IPV4 0.0.0.0时间描述: (time the session is active)t = (会话活动时间) t=0 : 表⽰⼀直存活r = * (0或多次重复次数)媒体描述m = (媒体名称和传输地址)i = * (媒体标题)c = * (连接信息 — 如果包含在会话层则该字段可选)b = * (带宽信息) (bandwidth information) 限流k = * (加密密钥)a = * (0 个或多个会话属性⾏)m描叙⾏:(media name and transport address)格式: m=(媒体)(端⼝)(传送层)(格式或负载类型列表)媒体类型:⾳频(audio),视频(video),应⽤,数据和控制端⼝:媒体传送层端⼝传送层:ip4上⼤多基于rtp/udp上传送(RTP/AVP)IETF RTP协议,在udp上传输格式列表:对应对应的⾳频负载类型(PT) 如:m=audio 1024 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126 SAVPF: Safety audio vidio profile(可以配置) feedback(可以反馈,可以控制)a描叙⾏:×(zero or more session attribute lines)a=<type> 或 a=<Type>:<Values> 如:a=framerate:<帧速率>a=control:(⾳/视频连接信息)a=control:rtsp://192.168.1.197/h264stream0/trackID=0rtpmap可选,动态的定义playload type,⽤那个编解码器,什么参数格式:a=rtpmap:<fmt/playload type> <encoding name> / <clock rate> [/<encodingparameters>]a=rtpmap:96 H264/90000fmtp可选a=fmtp:<format/playload type> parameters 如:a=fmtp:103 apt=106三、SDP协议例⼦v=0o=StreamingServer 3677033027 1437537780000 IN IP4 192.168.1.44s=\demo.mp4u=http:///e=admin@c=IN IP4 0.0.0.0b=AS:1398t=0 0a=control:*a=x-copyright: MP4/3GP File hinted with GPAC 0.5.0-rev4065 (C)2000-2005 - a=range:npt=0- 216.52167m=video 0 RTP/AVP 96b=AS:1242a=3GPP-Adaptation-Support:1a=rtpmap:96 H264/90000a=control:trackID=65536a=fmtp:96 profile-level-id=42000A; packetization-mode=1; sprop-parameter-sets=Z0IACpZUBQHogA==,aM44gA==a=framesize:96 640-480m=audio 0 RTP/AVP 97b=AS:156a=3GPP-Adaptation-Support:1a=rtpmap:97 mpeg4-generic/48000/1a=control:trackID=65537a=fmtp:97 profile-level-id=41; config=1188; streamType=5; mode=AAC-hbr; objectType=64; constantDuration=1024; sizeLength=13; indexLength=3; indexDeltaLength=3视频”a=fmtp”字段的解析参考 RFC3984的8.2节WebRTC中的SDPSDP组成:会话元: v 版本 o拥有者 t时间⽹络描述: c a=candidate流描述(媒体描述): m媒体 a=rtpmap a=fmtp安全描述 : a=crypto 加密算法 a=ice-frag a=ice-pwd a=fingerprint 指纹服务质量: a=rtcp-fb a=group(多个⾳频流和视频流是否公⽤⼀个通道) a=rtcpmux(rtp和rtcp公⽤⼀个端⼝)。
SDP协议原理与应用
SDP协议原理及应用编者:尚森审核:王高原中兴通讯固网交换用服部修改记录目录第1章SDP的协议原理 (1)1.1SDP的概述 (1)1.2SDP协议字段 (1)1.3说明 (3)第2章SDP的应用 (4)2.1SDP在SIP中的应用 (4)2.2SDP各TYPE的详细解释 (5)2.3SDP在H.248的应用 (7)第3章SDP的实例应用 (8)3.1SDP的举例描述 (8)3.2H.248中SDP消息举例描述 (15)第1章SDP的协议原理1.1 SDP的概述SDP(SDP:SessionDescriptionProtocol会话描述协议)是由IETF(Interne工程任务组)作为RFC4566颁布,描述流媒体初始化参数的格式。
其目的就是在媒体会话中,传递媒体流信息,允许会话描述的接收者去参与会话。
定义了会话描述的统一格式,但并不定义多播地址的分配和SDP消息的传输,也不支持媒体编码方案的协商,这些功能均由下层传送协议完成。
会话描述协议(SDP)为会话通知、会话邀请和其它形式的多媒体会话初始化等目的提供了多媒体会话描述。
会话目录用于协助多媒体会议的通告,并为会话参与者传送相关设置信息。
SDP即用于将这种信息传输到接收端。
SDP完全是一种会话描述格式――它不属于传输协议――它只使用不同的适当的传输协议,包括会话通知协议(SAP)、会话初始协议(SIP)、实时流协议(RTSP)、MIME扩展协议的电子以及超文本传输协议(HTTP)。
SDP的设计宗旨是通用性,它可以应用于大围的网络环境和应用程序,而不仅仅局限于组播会话目录,但SDP不支持会话容或媒体编码的协商。
在因特网组播骨干网(Mbone)中,会话目录工具被用于通告多媒体会议,并为参与者传送会议地址和参与者所需的会议特定工具信息,这由SDP完成。
SDP连接好会话后,传送足够的信息给会话参与者。
SDP信息发送利用了会话通知协议(SAP),它周期性地组播通知数据包到已知组播地址和端口处。
网络视频传输协议RTPRTCPRTSPSIPSDP
网络视频传输协议RTPRTCPRTSPSIPSDP流媒体服务器做音视频媒体传输主要就两件事:媒体回话协商,媒体数据传输;下面这几种协议就围绕着这两个需求而产生。
1.RTP协议rtp的全称是实时传输协议RTP(Real-time Transport Protocol),是应用层的一个协议,主要用来做音视频数据传输,一般基于udp协议之上,也支持组播,当然基于tcp也是可以的。
用rtp传输音视频数据的一般做法是将音视频数据前面加上rtp头封装成一个个的rtp包,接收端根据接收到的数据在组成按帧标记组成音视频数据,里面可以是h264或者h265的裸码流打包,也是是ps 格式或者ts格式封装的数据包,也可以是具有私有头的第三方封包。
rtp主要说的就是rtp头,里面比较重要的字段就是sn,一般在一帧数据被拆成多个rtp包,sn就是拆包的顺序,从1-32767循环叠加,在一个帧的最后一包会被打上mark标记,以此来区分一帧与另外一帧,用于接收方组成一帧数据包,多路不同的音视频媒体流使用ssrc源标记区分。
2.RTCP协议一般提到rtp总会提到rtcp协议,它们是配套的一套协议RTCP的全称是实时传输控制协议(Real-time Control Protocol),rtp虽然可以传输音视频数据,但是却不能携带其他的信息,比如当前网络的丢包,延迟,抖动,这些都是保证音视频数据传输质量的重要信息。
简单的说来就是rtp协议负责传输音视频数据,rtcp协议配套传输当前传输的控制信息。
rtcp主要说的就是两个东西,sr报告和rr报告,sr报告叫发送报告,随着发出的rtp包发出,主要告诉接收端,当前的发送情况;rr报告叫做接收报告,在接收到一个数据包后发出,回传到发送端,主要告诉发送端当前的接收情况;当然还有其他的媒体描述信息,应用程序消息等。
rtp另一个支持的特性就是端口复用,简单的说就是多路音视频传输使用一个端口接收,多路不同的媒体流使用一个叫做复用id的字段来区分,每一路的muxid不一样。
sdp编码中pt值 -回复
sdp编码中pt值-回复sdp编码中pt值是会话描述协议(Session Description Protocol,简称SDP)中的一个重要参数。
SDP是一种文本协议,用于描述会话过程中的媒体类型、格式和参数等信息。
而pt值则是用于标识媒体流的编码格式。
本文将一步一步解析SDP编码中的pt值。
第一步:了解SDP编码的基本结构SDP编码通常由多行文本组成,每行以一个字母开头,表示该行的类型。
其中,以字母‘m’开头的行表示媒体描述,而以字母‘a’开头的行则表示媒体描述的属性。
第二步:查找媒体描述行在SDP编码中,先要找到以字母‘m’开头的行,该行包含了媒体描述的相关信息,比如媒体类型、传输协议和端口等。
例如,一行类似于“m=audio 5004 RTP/AVP 0 8 96”,其中“m=audio”表示媒体类型为音频,端口号为5004,传输协议为RTP/AVP。
接下来的数字“0 8 96”即表示了接下来的媒体流使用的编码格式。
第三步:解析媒体流编码格式接下来,就是解析媒体描述行中的编码格式了。
编码格式被编码为以空格分隔的整数。
每个整数对应一个编码格式,称之为Payload Type(简称PT)。
在示例中的“0 8 96”,每个整数对应一个编码格式。
以音频为例,“0”表示PCMU(G.711 μ-law),“8”表示PCMA(G.711 A-law),而“96”则表示编码为AC3(Audio Codec 3)。
第四步:解析编码格式对应的媒体参数在SDP编码中,以字母‘a’开头的行用于描述媒体流的属性。
属性行提供了关于编码格式的更多细节,比如传输速率、帧率、分辨率等。
例如,对于媒体格式“PCMU”,可以有一个类似于“a=rtpmap:0 PCMU/8000”的属性行。
其中,“rtpmap”为属性名称,“0”为编码格式的值,“PCMU”为编码格式的名称,“8000”为采样率。
类似地,“a=rtpmap:8 PCMA/8000”和“a=rtpmap:96 AC3/48000”分别表示PCMA编码格式和AC3编码格式的属性描述。
rtp传es的sdp写法 -回复
rtp传es的sdp写法-回复RTP(Real-time Transport Protocol)是一种在计算机网络中传输连续媒体数据的协议,而ES(Elementary Stream)表示一种音频或视频的基本数据流。
在音视频传输过程中,RTP通常与SDP(Session Description Protocol)结合使用,以描述会话参数和媒体属性。
一、什么是SDP?SDP是一种文本格式的协议,用于描述会话参数和媒体属性。
它由一系列的行组成,每行包含一个字段和相应的值。
SDP被用于建立会话,包括音视频编解码器的选择、传输层协议、媒体流的传输地址等。
二、RTP传输ES的SDP写法在RTP传输ES的SDP中,需要定义会话的相关参数和媒体属性。
以下是一步一步的写法:1. 定义会话参数使用v字段定义协议版本,如:v=0使用o字段定义会话的创建者和会话ID,如:o=- 1234567890 1 IN IP4 192.168.0.1使用s字段定义会话名称,如:s=RTP Session2. 定义媒体流参数使用m字段定义媒体流的类型、传输地址和端口,如:m=audio 5004 RTP/AVP 0使用a字段定义媒体流使用的编解码器和传输方式,如:a=rtpmap:0 PCMU/8000使用c字段定义媒体流传输的连接地址,如:c=IN IP4 192.168.0.1使用b字段定义媒体流传输的带宽,如:b=AS:643. 定义音视频流使用a字段定义音视频流的媒体格式和传输速率,如:a=rtpmap:96 H264/90000使用a字段定义音视频流的传输参数,如:a=fmtp:96 profile-level-id=42E01E;level-asymmetry-allowed=14. 定义媒体流的加密和安全性使用a字段定义加密算法和密钥,如:a=crypto:1 AES_CM_128_HMAC_SHA1_32inline:ABCDEFGHIJKLMNOPQRSTUVWXYZ012345使用a字段定义媒体流的安全策略,如:a=rtcp-fb:96 nack5. 定义媒体流的时间戳和时钟频率使用a字段定义媒体流的时间戳信息,如:a=mediaclk:direct=0使用a字段定义媒体流的时钟频率,如:a=rtpmap:0 PCMU/8000三、总结RTP传输ES的SDP可以描述会话参数和媒体属性,以实现音视频的传输。
sdp编码中pt值 -回复
sdp编码中pt值-回复SDP(Session Description Protocol)编码中的pt值代表负载类型(payload type)。
在SDP中,负载类型用于描述会话中传输的数据类型和编码格式。
每种数据类型和编码格式都有一个唯一的pt值与之对应。
本文将一步一步回答有关SDP编码中pt值的问题,介绍pt值的作用、用途以及如何使用它来配置SDP会话。
第一步:了解SDP和pt值的基本概念SDP是一种文本格式的协议,用于描述多媒体会话的信息,包括会话的类型、编码格式、传输协议等。
SDP是会话发起方和接收方之间交换会话信息的一种标准方式。
pt值是SDP中用于标识负载类型的一个特定字段。
每个负载类型都有一个唯一的pt值与之对应。
负载类型可以是音频、视频或其他多媒体数据。
pt值的范围是0到127。
第二步:pt值的作用和用途pt值在SDP编码中起着至关重要的作用。
它经常用于以下几个方面:1. 标识数据类型:pt值用于标识数据类型,例如音频或视频。
通过查看pt值,会话参与方可以确定接收到的数据是什么类型的。
2. 选择编码格式:不同的负载类型有不同的编码格式。
pt值用于表示负载类型的具体编码格式。
对于特定的pt值,会话参与方可以选择一个与之对应的编码格式进行解码。
3. 区分多个媒体流:在一个会话中可能存在多个媒体流,如音频和视频。
pt值可以用于区分这些不同的媒体流,并确保接收方正确处理每个媒体流。
4. 支持多种传输协议:SDP可以支持多种传输协议,如RTP(Real-time Transport Protocol)和RTCP(RTP Control Protocol)。
pt值可以指定特定负载类型在特定传输协议下的使用方式。
第三步:如何使用pt值配置SDP会话在SDP会话中使用pt值时,需要按照以下步骤进行配置:1. 确定需要传输的负载类型:首先确定会话中需要传输的负载类型,如音频、视频或其他多媒体数据。
sdp编码中pt值 -回复
sdp编码中pt值-回复PT值是会话描述协议(Session Description Protocol,SDP)中的一个重要属性,用于描述媒体流的传输特性和编码格式。
PT值是指PayLoad Type,即有效载荷类型,它是媒体流在SDP中的唯一标识符。
在SDP编码中,PT值被用于识别并区分不同的媒体类型和编码格式,以实现媒体流的描述和传输。
一、什么是SDP编码?SDP编码是用于描述和传输多媒体会话的一种文本协议。
它使用简单的文本格式来定义会话的各种属性、媒体流的传输特性和编码格式等。
SDP编码广泛应用于多媒体会话的建立与管理,例如网络电话、实时视频传输等。
二、什么是PT值?PT值是SDP编码中的一个属性,用于唯一标识不同的媒体流。
它以一个8位的二进制数表示,并被编码为十进制的数值。
PT值的范围是0-127,其中0-95为动态范围,96-127为静态范围。
每个PT值对应着一个特定的媒体类型和编码格式。
三、PT值的作用是什么?PT值在SDP编码中起着关键的作用,它通过不同的数值来区分不同的媒体类型和编码格式,从而使得会话参与方能够根据PT值正确解析和处理媒体流。
通过PT值,SDP编码可以描述音频、视频、应用数据等不同类型的媒体流,并指定它们的传输特性和编码格式。
四、如何确定PT值?PT值的确定需要考虑多个因素,包括媒体类型、编码格式以及编码器的特性等。
对于常见的音频和视频编码格式,PT值通常是已经定义好的。
例如,音频编码使用的PT值有PCMU(0)、PCMA(8)、G.729(18)等,而视频编码使用的PT值有H.264(96)、VP8(100)等。
对于新的媒体类型和编码格式,可以由SDP的制定者根据需要自行分配PT值。
五、PT值的示例应用以音频会话为例,假设我们需要描述一个使用G.711编码的音频流。
在SDP编码中,我们可以使用如下的描述:m=audio 5004 RTP/AVP 0a=rtpmap:0 PCMU/8000其中,m=audio 5004 RTP/AVP 0表示该媒体流的类型为音频,使用RTP 协议进行传输,而PT值为0。
sdp编码中pt值 -回复
sdp编码中pt值-回复SDP(Session Description Protocol)是一种用于描述多媒体会话信息的协议。
在SDP编码中,pt值(Payload Type)是会话描述中的一个重要参数。
本文将详细介绍SDP编码中pt值的定义、用途以及在实际应用中的应用场景。
首先,我们来了解一下SDP编码中pt值的定义。
在SDP编码中,pt值用来标识传输层协议中的数据类型,主要是用于指定RTP(Real-time Transport Protocol)载荷类型。
RTP是一种用于实时传输多媒体数据的协议,而pt值则用来标识不同类型的多媒体数据,如音频、视频等。
在SDP编码中,pt值的取值范围是0到127,其中0到95是预留给标准负载类型的。
这些标准负载类型包括G.711、G.722、H.264等,每个标准负载类型都有一个对应的pt值。
而96到127则是预留给动态负载类型的,这些动态负载类型可以由用户自定义。
接下来,我们来看一下pt值在SDP编码中的用途。
pt值在SDP编码中承载的信息非常重要,它可以告诉接收者如何对接收到的媒体数据进行解析和处理。
例如,假设发送者使用G.711编码进行音频传输,那么SDP的pt值就应该设置为标准负载类型中G.711对应的值。
接收者在收到数据时,根据pt值可以知道它所使用的编码格式,从而正确解析和播放音频数据。
除了用于标识负载类型,pt值还可以用于描述媒体流的特性。
例如,pt 值可以描述音频流的采样率、通道数和位深度等信息,使接收者可以根据这些信息进行适当的设置以保证媒体数据的正常播放。
在实际应用中,pt值的应用场景非常广泛。
首先,pt值可以用于多媒体会话的建立和协商。
在SDP协议中,发送者和接收者可以通过交换SDP 报文来协商会话参数,其中包括pt值的设置。
通过协商,发送者和接收者可以确定共同支持的负载类型和特性,从而保证会话的顺利进行。
此外,pt值还可以用于流媒体服务器的配置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除sdp协议详解篇一:sdp协议原理及应用内部公开▲sdp协议原理及应用编者:尚森审核:王高原中兴通讯固网交换用服部内部公开▲修改记录内部公开▲目录第1章sdp的协议原理................................................. ................................................... (1)1.1sdp的概述................................................. ................................................... (1)1.2sdp协议字段................................................. ................................................... .. (1)1.3说明................................................. ................................................... .. (3)第2章sdp的应用................................................. ................................................... .. (4)2.1sdp在sip电话中的应用2.2sdp各type的详细解释2.3sdp在h.248的应用第3章sdp的实例应用.3.1sdp的举例描述3.2h.248中sdp消息举例描述.内部公开▲第1章sdp的协议原理1.1sdp的概述sdp(sdp:sessiondescriptionprotocol会话描述协议)是由ietF(interne工程任务组)作为RFc4566颁布,描述流媒体初始化参数的格式。
其目的就是在媒体会话中,传递媒体流信息,允许会话描述的接收者去参与会话。
定义了会话描述的统一格式,但并不定义多播地址的分配和sdp会话描述协议(sdp多媒体会话描述。
即用于将这种信息传输到接收端。
sdp完全是一种会话描述格式――适当的传输协议,包括会话通知协议(sapRtsp)、mime扩展协议的电子邮件以及超文本传输协议(sdp播会话目录,但sdp在因特网组播骨干网(mbone 这由完成。
sdp连接好会话后,传送足够的信息给会话参与者。
sdpsap),它周期性地组播通知数据包到已sap协议头和文本有效载荷(textpayloadsdp会话描述。
此,外信息也可以通过电子邮件或www(sdp1.2sdp协议字段sdp信息是文本信息,采用utF-8编码中的iso10646字符集。
sdp会话描述如下:(标注*符号的表示可选字段):sdp协议原理及应用内部公开▲表1-1sdp会话描述篇二:sip协议详解中文版1、sip协议介绍internet的许多应用都需要建立和管理一个会话,会话在这里的含义是在参与者之间的数据的交换。
由于考虑到参与者的实际情况,这些应用的实现往往是很复杂的:参与者可能是在代理间移动,他们可能可以有多个名字,他们中间的通讯可能是基于不同的媒介(比如文本,多媒体,视频,音频等)-有时候是多种媒介一起交互。
人们创造了无数种通讯协议应用于实时的多媒体会话数据比如声音,影像,或者文本。
本sip(会话初始协议)和这些协议一样,同样允许使用internet端点(用户代理)来寻找参与者并且允许建立一个可共享的会话描述。
为了能够定位精确的会话参与者,并且也为了其他的目的,sip允许创建基础的networkhosts(叫做代理服务器),并且允许终端用户注册上去,发出会话邀请,或者发出其他请求。
sip是一个轻形的,多用途的工具,可以用来创建,修改和终止会话,它独立运作于通讯协议之下,并且不依赖建立的会话类型。
2、sip协议功能概况sip是一个应用层的控制协议,可以用来建立、修改、和终止多媒体会话(或者会议)例如internet电话。
sip也可以邀请参与者参加已经存在的会话,比如多方会议。
媒体可以在一个已经存在的会话中方便的增加(或者删除)。
sip显示的支持名字映射和重定向服务,这个用于支持个人移动业务-用户可以使用一个唯一的外部标志而不用关系他们的实际网络地点。
sip在建立和维持终止多媒体会话协议上,支持5个方面:用户定位:检查终端用户的位置,用于通讯。
用户有效性:检查用户参与会话的意愿程度。
用户能力:检查媒体和媒体的参数。
建立会话:”ringing”,建立会话参数在呼叫方和被叫方。
会话管理:包括发送和终止会话,修改会话参数,激活服务等等。
sip不是一个垂直集成的通讯系统。
sip可能叫做是一个部件更合适,它可以用作其他ietF协议的一个部分,用来构造完整的多媒体架构。
比如,这些架构将会包含实时数据传输协议(Rtp)(RFc1889)用来传输实时的数据并且提供qos反馈,实时流协议(Rstp)(RFc2326)用于控制流媒体的的传输,媒体网关控制协议(megaco)(RFc3015)用来控制到公共电话交换网(pstn)的网关,还有会话描述协议(sdp)(RFc2327)用于描述多媒体会话。
因此,sip应该和其他的协议一起工作,才能提供完整的对终端用户的服务。
虽然基本的sip协议的功能组件并不依赖于这些协议。
sip本身并不提供服务。
但是,sip提供了一个基础,可以用来实现不同的服务。
比如,sip可以定位用户和传输一个封装好的对象到对方的当前位置。
并且如果我们利用这点来通过sdp传输会话的描述,立刻,对方的用户代理可以得到这个会话的参数。
如果我们用这个像传输会话描述(sessiondescRiptionsd)一样呼叫方的照片,一个”呼叫id”服务很容易就建立了。
这个简单的例子说明了,sip作为一个基础,可以在其上提供很多不同的服务。
sip并不提供会议控制服务(比如议席控制或者投票系统),并且并没有建议会议应该则那样管理。
可以通过在sip 上建立其他的会议控制协议来发起一个会议。
由于sip可以管理参与会议的各方的会话,所以会议可以跨异构的网络,sip并不能,也不打算提供任何形式的网络资源预留管理。
安全对于提供的服务来说特别重要。
要达到理想的安全程度,sip提供了一套安全服务,包括防止拒绝服务,认证服务(用户到用户,代理到用户),完整性保证,加密和隐私服务。
sip可以基于ipV4也可以基于ipV63、术语在这个文档中,关键词”必须”,”不允许”,”要求”,”可以”,”不可以”,”应该”,”不应该”,”建议”,”不建议”,”可能”,”可选”是根据bcp14,RFc2119[2]的规范描述sip实现需要的不同层次4、实施概览这节通过简单的示例介绍了sip的基本实现。
本节是通过自然的而非正则的示例来介绍的。
第一个例子说明了sip的基本功能:定位一个断点,发出通讯请求,通过协商会话参数建立会话,拆卸刚才建立的会话。
图一表示一个典型的alice和bob两个用户间的sip 消息交易交换例子(.每一个消息采用字母”F”和一个用来指向正文的一个数字做标记)在这个例子里,alice在她的pc上使用一个sip的应用程序(比如说一个软的电话),呼叫bob在internet上的一个sip电话。
这个例子也掩饰了两个sip代理之间,怎样为alice和bob建立会话连接。
thistypicalarrangementisoftenreferredtoasthe"siptrapezoid"assh ownbythegeometricshapeofthedottedlinesinFigure1.ali ce通过bob的sip标志“呼叫”bob,这个sip标志是统一分配的资源(uniformResourceidentifieruRi)称作sipuRi。
sipuRi在19.1节中定义。
它很像一个email抵制,典型的sipuRi包括一个用户名和一个主机名。
在这个范例中,sipuRi是sip:bob@,是bob的sip服务提供商。
alice有一个sipuRi:sip:alice@。
alice可以输入bob的uRi,也可以直接在地址本的一个超级链接上点击一下bob的uRi。
sip也提供保密uRi,称作sipsuRi。
例如:sips:。
一个基于sipsuRi的通话保证这个通话是安全的,并且对呼叫者和被叫的所有的sip消息是加密传输的(叫做tls)。
在tls中,请求是通过加密方式传输给被叫方,但是这个加密机制是基于被叫方宿主服务器的实现的。
sip是基于一个类似http协议的请求应答的通讯模式。
每一个通讯都包含对某个功能的请求,并且起码需要一个应答。
在这个应答中,alice的软电话发送一个含有bbo的sipuRi抵制的inVite通讯请求。
inVite是一个sip请求的例子,表示请求方(alice)希望服务方(bob)应答。
inVte 请求包含一系列的包头域(headerfields)。
包头中包含很多属性并且包含了传输消息的附加信息。
在inVite中有如下的字段:呼叫的唯一标志,目的抵制,alice的地址,alice 和bob建立会话的类型。
inVite请求(图1中的F1)可能看起来像这样的:inVitesip:bob@sip/2.0Via:sip/2.0/;branch=z9hg4bk776as dhdsmax-Forwards:70to:bobFrom:alice;tag=1928301774call-id:a84b4c76e66710@cseq:314159i nVitecontact:content-type:application/sdpcontent-length: 142(alicessdpnotshown)..proxyproxy..alice’s............................................bob’s softphone||||||sipphone|||||||||||||||||||||inViteF1|--------------->||inViteF2|--------------->||100tryingF3|inViteF4|--------------->||100tryingF5|180RingingF7|180RingingF6|180RingingF8| ackF12-------------------------------------------------> mediasessionbyeF13|200okF14-------------------------------------------------> 图一:sip矩形表达的sip会话建立例子。