写在开头: 本篇文章扩展自Simulcast这篇文章,这篇文章只写了个大概,这里细说实现细节;以下的功能实现都是在M76版本源码。
联播在H264EncoderImpl 实现
在移动端的WebRTC的native源码中H264有两种实现:基于系统的硬件支持的h264和在h264_encoder_impl.cc
(video_coding/codecs/h264/)中实现的openH264软件编码;
硬件的Simulcas
t功能除了本文的描述有一种(这种方案已经在实际羡慕中测试验证),软件H264的实现是基于FFmpeg和openH264
的实现:代码可以参考 ;
类和编码器的初始化
int32_t H264EncoderImpl::InitEncode(const VideoCodec* inst