我是靠谱客的博主 坦率电话,这篇文章主要介绍WebRtc 音频编码器,现在分享给大家,希望可以做个参考。

WebRtcVoiceEngine在初始化时收集了当前支持的编码器列表,其步骤如下:

void WebRtcVoiceEngine::Init()
{
	send_codecs_ = CollectCodecs(encoder_factory_->GetSupportedEncoders());
}

获编码器工厂支持的编码方式

encoder_factory_->GetSupportedEncoders()  见 builtin_audio_encoder_factory.cc


rtc::scoped_refptr<AudioEncoderFactory> CreateBuiltinAudioEncoderFactory()
{
	return CreateAudioEncoderFactory<

#if WEBRTC_USE_BUILTIN_OPUS
      AudioEncoderOpus,
#endif

      AudioEncoderIsac, AudioEncoderG722,

#if WEBRTC_USE_BUILTIN_ILBC
      AudioEncoderIlbc,
#endif

      AudioEncoderG711, NotAdvertised<AudioEncoderL16>>();
}
}

最后增加 kDtmfCodecName[] = "telephone-event"

AudioCodecs WebRtcVoiceEngine::CollectCodecs(const std::vector<webrtc::AudioCodecSpec>& specs)
{
	...
	...

	// Add telephone-event codecs last.
  	for (const auto& dtmf : generate_dtmf)
  	{
    	if (dtmf.second)
    	{
      		map_format({kDtmfCodecName, dtmf.first, 1}, &out);
    	}
  	}
}

 

最后

以上就是坦率电话最近收集整理的关于WebRtc 音频编码器的全部内容,更多相关WebRtc内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(127)

评论列表共有 0 条评论

立即
投稿
返回
顶部