WebRTC没有提供这方面的接口,我们可以通过修改sdp信息来实现音视频流的传输带宽控制,sdp格式参考之前的文章:《WebRTC – SDP格式解析》
实现原理比较简单,就是分别在sdp的audio和video媒体部分加入b=AS:
信息,可以参考下面的代码实现:
void updateSdpAudioVideoMaxKbps(QString &sdp, int audioMaxKbps, int videoMaxKbps) {
if (audioMaxKbps != -1) {
int audioStart = sdp.indexOf("m=audio");
if (audioStart != -1) {
int insertStart = sdp.indexOf("\r\n", audioStart + strlen("m=audio"));
if (insertStart != -1) {
insertStart += (strlen("\r\n"));
sdp.insert(inse