SDP (Session Description Protocol)

时间:2023-11-23 19:57:26

SDP的描述网络上一大堆中文的,可以看看RFC2327

SDP 信息是文本信息,采用 UTF-8 编 码中的 ISO 10646 字符集。SDP 会话描述如下:(标注 * 符号的表示可选字段): 
  v = (协议版本) 
  o = (所有者/创建者和会话标识符) 
  s = (会话名称) 
  i = * (会话信息) 
  u = * (URI 描述) 
  e = * (Email 地址) 
  p = * (电话号码) 
  c = * (连接信息 ― 如果包含在所有媒体中,则不需要该字段) 
  b = * (带宽信息)
v=0 //SDP version
// o field定义的源的一些信息。其格式为:o=<username> <sess-id> <sess-version> <nettype> <addrtype> <unicast-address>
o=- 1271659412 1271659412 IN IP4 10.56.136.37 s=<No title>
i=<No author> <No copyright>  //session的信息
c=IN IP4 0.0.0.0 //connect 的信息,分别描述了:网络协议,地址的类型,连接地址。
c=IN IP4 0.0.0.0
t=0 0 //时间信息,分别表示开始的时间和结束的时间,一般在流媒体的直播的时移中见的比较多。
a=SdpplinVersion:1610641560 //描述性的信息
a=StreamCount:integer;2 //用来描述媒体流的信息,表示有两个媒体流。integer表示信息的格式为整数。
a=control:*
a=DefaultLicenseValue:integer;0 //License信息
a=FileType:string;"MPEG4" ////用来描述媒体流的信息说明当前协商的文件是mpeg4格式的文件
a=LicenseKey:string;"license.Summary.Datatypes.RealMPEG4.Enabled"
a=range:npt=0-72.080000  //用来表示媒体流的长度
m=audio 0 RTP/AVP 96 //做为媒体描述信息的重要组成部分描述了媒体信息的详细内容:表示session的audio是通过RTP来格式传送
的,其payload值为96传送的端口还没有定。
b=as:24 //audio 的bitrate
b=RR:1800
b=RS:600
a=control:streamid=1  //通过媒体流1来发送音频
a=range:npt=0-72.080000 //说明媒体流的长度。
a=length:npt=72.080000
a=rtpmap:96 MPEG4-GENERIC/32000/2 //rtpmap的信息,表示音频为AAC的其sample为32000
a=fmtp:96 profile-level-id=15;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1210 //config为AAC的详细格
式信息
a=mimetype:string;"audio/MPEG4-GENERIC"
a=Helix-Adaptation-Support:1
a=AvgBitRate:integer;48000
a=HasOutOfOrderTS:integer;1
a=MaxBitRate:integer;48000
a=Preroll:integer;1000
a=OpaqueData:buffer;"A4CAgCIAAAAEgICAFEAVABgAAAC7gAAAu4AFgICAAhKIBoCAgAEC"
a=StreamName:string;"Audio Track"

以下是几个工作中抓的实例信息:

MPEG4 Multicast SDP
HTTP/1.0 200 OK
Cache-Control: no-cache
Pragma: no-cache
Expires: Mon, 06 Jan 1990 00:00:01 GMT
Content-Length: 548
Content-Type: application/sdp v=0
o=- 00012800008802600200 1150370773 IN IP4 192.168.1.5
s=RTSP Server(MPEG4) - 008000581A02
t=0 0
a=charset:Shift_JIS
a=range:npt=0-
a=control:*
a=etag:1234567890
m=video 2240 RTP/AVP 96
c=IN IP4 224.2.0.1/16
b=AS:1536
a=rtpmap:96 MP4V-ES/30000
a=control:trackID=1
a=fmtp:96 profile-level-id=1; config=000001B001000001B509000001000000012000845D4C28A021E0A31F;decode_buf=76800
a=x-framerate:30
a=framerate:30.0
m=audio 2242 RTP/AVP 97
c=IN IP4 224.2.0.1/16
b=AS:32
a=rtpmap:97 G726-32/8000/1
a=control:trackID=2
a=ptime:125
MJPEG Multicast SDP
HTTP/1.0 200 OK
Cache-Control: no-cache
Pragma: no-cache
Expires: Mon, 06 Jan 1990 00:00:01 GMT
Content-Length: 433
Content-Type: application/sdp v=0
o=- 00012800008802600201 1150370773 IN IP4 192.168.1.5
s=RTSP Server(MJPG) - 008000581A02
t=0 0
a=charset:Shift_JIS
a=range:npt=0-
a=control:*
a=etag:1234567890
m=video 2240 RTP/AVP 26
c=IN IP4 224.2.0.1/16
b=AS:10240
a=rtpmap:26 JPEG/90000
a=control:trackID=1
a=x-framerate:20
a=framerate:20.0
m=audio 2242 RTP/AVP 97
c=IN IP4 224.2.0.1/16
b=AS:32
a=rtpmap:97 G726-32/8000/1
a=control:trackID=2
a=ptime:125
H264 Multicast SDP
HTTP/1.0 200 OK
Cache-Control: no-cache
Pragma: no-cache
Expires: Mon, 06 Jan 1990 00:00:01 GMT
Content-Length: 531
Content-Type: application/sdp v=0
o=- 00012800008802600202 1150370773 IN IP4 192.168.1.5
s=RTSP Server(H264) - 008000581A02
t=0 0
a=charset:Shift_JIS
a=range:npt=0-
a=control:*
a=etag:1234567890
m=video 2240 RTP/AVP 96
c=IN IP4 224.2.0.1/16
b=AS:1536
a=rtpmap:96 H264/90000
a=control:trackID=1
a=fmtp:96 packetization-mode=1;profile-level-id=42001e;sprop-parameter-sets=Z0IAHqaAoD0Q,aM48gA==
a=x-framerate:30
a=framerate:30.0
m=audio 2242 RTP/AVP 97
c=IN IP4 224.2.0.1/16
b=AS:32
a=rtpmap:97 G726-32/8000/1
a=control:trackID=2
a=ptime:125

http://www.cnblogs.com/qingquan/archive/2011/08/02/2125585.html

http://baike.soso.com/v4548325.htm?ch=ch.bk.innerlink