SDP Session Description Protocol 会话描述协议
SDP协议用来在SIP终端之间交换媒体信息,WebRTC标准中同样选用了
SDP协议来交换媒体信息.
WebRTC Peer之间交换SDP包括的信息有transport protocols,ports,codecs等等
相关的IETF文档:
https://tools.ietf.org/pdf/draft-nandakumar-rtcweb-sdp-08.pdf
语法
SDP由多部分信息组成 每部分信息占一行.
<type>=<value>
v= 表示版本
o= 表明会话源 ssrc
s= 表明会话名
a= 表明会话属性
m= 表明媒体协议信息
WebRTC SDP解析
这篇blog详细注释了一个sdp
http://www.cnblogs.com/onlycoder/p/7297362.html
- 1
- 2
修改SDP
修改SDP的时机:
1. 生成Local SDP后, 设置setLocalDescprition之前 修改本地的SDP
2. 设置Remote SDP后, 设置setRemoteDescprition之前 修改Remote端的SDP
- 1
- 2
- 3
SDP协商规则
此处应当分析webrtc的代码来查看双方是怎么根据local和remote的sdp确定
媒体能力的.
- 1
- 2
带宽控制
sdp中存在a=rtcp-fb:100 ccm fir描述行
会罗列多行 a=rtcp-fb
根据当前协议选用的编码协议 在对应的rtcp描述行后加上
a=fmtp:100 x-google-max-bitrate=2800;x-google-min-bitrate=1200;x-google-start-bitrate=200000
x-google-max-bitrate 最大码率
x-google-min-bitrate 最低码率
x-google-start-bitrate 会话的起始码率
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
Codec编码器
sdp中一般存在m=video行 描述video相关的信息
m=video 9 RTP/SAVPF 100 116 117 121 96
100 代表 视频编码优先选用VP8
121 代表 H264
顺序先后表示优先级 所以如果要优先选用H264编码 修改SDP中视频编码器的顺序.
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。