sdp概览
比較不錯(cuò)的文章,轉(zhuǎn)載:https://www.cnblogs.com/wendellyi/p/3593322.html
sdp會(huì)話描述符有多行用如下格式組成的文本:
<type>=<value>
等號旁邊不允許留白。
sdp會(huì)話描述符有一個(gè)session-level的段,后面會(huì)接零個(gè)或者多個(gè)media-level段。session-level部分使用”v=“開始,直到第一個(gè)media-level段。每個(gè)media-level段由”m=“開始,直到下個(gè)media-level段開始或者描述符結(jié)束,下面是個(gè)例子:
??? v=0
??? o=- 3 2 IN IP4 192.168.33.117
??? s=CounterPath eyeBeam 1.5
??? c=IN IP4 192.168.33.117
??? t=0 0
??? m=audio 35650 RTP/AVP 0 8 18 101
??? a=alt:1 3 : sQfPf+iU /KNiTB1A 192.168.33.117 35650
??? a=alt:2 2 : SnxucZRo zpZgHxu2 192.168.20.1 35650
??? a=alt:3 1 : 8ZUJ6mxW SHFqJnjo 192.168.88.1 35650
??? a=fmtp:18 annexb=no
??? a=fmtp:101 0-15
??? a=rtpmap:18 G729/8000
??? a=rtpmap:101 telephone-event/8000
??? a=sendrecv
??? m=video 54812 RTP/AVP 115 34
??? a=alt:1 3 : zO/vbGtW 56vfK5Yi 192.168.33.117 54812
??? a=alt:2 2 : 85YBMv+X 7bQYCVFc 192.168.20.1 54812
??? a=alt:3 1 : GY7RIq4D WivNWaVC 192.168.88.1 54812
??? a=fmtp:115 QCIF=1 I=1 J=1 K=1 MaxBR=1960
??? a=fmtp:34 QCIF=1 CIF=1 MaxBR=1960
??? a=rtpmap:115 H263-1998/90000
??? a=rtpmap:34 H263/90000
??? a=sendrecv
有些參數(shù)是可選的,那么會(huì)帶上*:
會(huì)話描述符
??? v=? (protocol version)
??? o=? (originator and session identifier)
??? 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)
一個(gè)或者多個(gè)媒體描述符 時(shí)間描述符
??? t=? (time the session is active)
??? r=* (zero or more repeat times)
媒體描述符
??? m=? (media name and transport address)?
??? 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)
關(guān)于a參數(shù),也就是屬性
可以用在session-level和media-level兩個(gè)層次中。格式為
a=<attribute>
a=<attribute>:<value>
例如
a=recvonly
a=orient:landscape
在media-level中a參數(shù)有如下兩個(gè)較為重要的部分
a=rtpmap:<payload type> <encoding name>/<clock rate> [/<encoding parameters>]
一般來說動(dòng)態(tài)載荷類型用得比較多,靜態(tài)一般不會(huì)使用比如u-law PCM默認(rèn)就是單聲道8kHz采樣率,這個(gè)是用載荷類型為0就可以完全表達(dá)出來。而動(dòng)態(tài)載荷類型則不然,有時(shí)候會(huì)根據(jù)網(wǎng)絡(luò)狀況調(diào)整細(xì)分參數(shù),比如調(diào)整采樣率和和編碼方式。
a=fmtp:<format> <format specific parameters>
該屬性值指定一個(gè)SDP不了解的特殊格式,該格式是媒體的格式的一種m參數(shù)中給出,定義指定格式的附加參數(shù)。
總結(jié)
- 上一篇: 不知道如何使用Hermit从Java本体
- 下一篇: c语言程序设计 北京理工,C语言程序设计