流媒体传输过程中看到或听到的内容,SDP包通常包括以下信息:
(1)会话信息
· 会话名和目的
· 会话活动时间
由于参与会话的资源是受限制的,因此包括以下附加信息是非常有用的
· 会话使用的带宽信息
· 会话负责人的联系信息
(2)媒体信息
· 媒体类型,例如视频和音频
· 传输协议,例如RTP/UDP/IP和H.320。
· 多播地址和媒体传输端口(IP多播会话)
· 用于联系地址的媒体和传输端口的远端地址(IP单播会话)
SDP描述通常由许多文本行组成,其文本行格式为<类型>=<值>,<类型>是一个字母,<值>是结构化的文本串,格式依<类型>而定,如: SDP格式(带*为可选):
Session description
v= (protocol version) //该行指示协议的版本
o= (owner/creator and session identifier)
例如: o=hybase 2890844526 2890842807 IN IP4 126.16.64.4 //o行中包含与会话所有者有关的参数(
1:第一个参数表明会话发起者的名称,该参数可不填写,如填写和SIP消息中,from消息头的内容一致;
2:第二个参数为主叫方的会话标识符;
3:第三个参数为主叫方会话的版本,会话数据有改变时,版本号递增;
4:第四个参数定义了网络类型,IN表示Internet网络类型,目前仅定义该网络类型;
5:第五个参数为地址类型,目前支持IPV4和IPV6两种地址类型;
6:第六个参数为地址:表明会话发起者的IP地址,该地址为信令面的IP地址,信令PDP激活时为手机分配。)
s= (session name) //表明本次会话的标题,或会话的名称
i=* (session information)
u=* (URI of description)
e=* (email address)
p=* (phone number)
c=* (connection information - not required if included in all media)
b=* (zero or more bandwidth information lines)
One or more time descriptions ("t=" and "r=" lines, see below)
z=* (time zone adjustments)
k=* (encryption key)
a=* (zero or more session attribute lines)
Zero or more media descriptions
Time description
t= (time the session is active)
r=* (zero or more repeat times)
Media description, if present
m= (media name and transport address)例如: m=audio 3458 RTP/AVP 0 96 97 // m行又称媒体行,描述了发送方所支持的媒体类型等信息(
1: 第一个参数为媒体名称:表明支持音频类型。
2: 第二个参数为端口号,表明UE在本地端口为3458上发送音频流。
3: 第三个参数为传输协议,一般为RTP/AVP协议;
4:第四~第七参数为所支持的四种净荷类型编号)
m=video 3400 RTP/AVP 98 99 //m行又称媒体行,描述了发送方所支持的媒体类型等信息
i=* (media title)
c=* (connection information - optional if included at session-level)
b=* (zero or more bandwidth information lines)
k=* (encryption key)
a=* (zero or more media attribute lines)