目录

前言

正文


前言

WebRTC推视频流遇到带宽限制时,是如何取舍分辨率和帧率的呢?今天我们就来具体分析,先从对外接口介绍走起。

《WebRTC工作原理精讲》系列-总览

正文

iOS的OC接口: 

编辑

Android的Java接口:

编辑

C++接口:

编辑

SetParametersInternal()具体实现如下: 

编辑

这里 media_channel_ 对象会调用哪个SetRtpSendParameters()方法呢?具体要看 media_channel_ 是音频Channel还是视频Channel,如果是音频Channel则走如下逻辑:

编辑

今天讨论视频编码控制,音频方面就不深入了。如果是视频Channel则走如下逻辑:

编辑

这个方法比较长,后半部分如下:

编辑

看上面的代码,调用的SetRtpParameters()方法其实分别对应音频引擎和视频引擎,这里只讨论视频,我们跳转到对应视频逻辑: