webrtc中音频3A处理开关配置

webrtc中音频3A处理开关配置

1 音频引擎初始化的时对3A处理进行设置

c++ 复制代码
WebRtcVoiceEngine::Init
media/engine/webrtc_voice_engine.h

WebRtcVoiceEngine::ApplyOptions
media/engine/webrtc_voice_engine.h

modules/audio_processing/audio_processing_impl.h
AudioProcessingImpl::ApplyConfig

2 创建audio source时设置3A参数

c++ 复制代码
cricket::AudioOptions options;
options.highpass_filter = true;
options.echo_cancellation = true;
options.auto_gain_control = true;
options.noise_suppression = true;
options.combined_audio_video_bwe = true;
options.residual_echo_detector = true;//残余回音消除
rtc::scoped_refptr<webrtc::AudioSourceInterface> source = g_factory->CreateAudioSource(options);
rtc::scoped_refptr<webrtc::AudioTrackInterface> trackPtr = g_factory->CreateAudioTrack(label, source);

PeerConnection::AddTransceiver
pc/peer_connection.h
关键参数:
cricket::MediaType media_type,
rtc::scoped_refptr<MediaStreamTrackInterface> track

PeerConnection::CreateSender
pc/peer_connection.h
关键参数:
rtc::scoped_refptr<MediaStreamTrackInterface> track

RtpSenderBase::SetTrack(MediaStreamTrackInterface* track)
pc/rtp_sender.h

AudioRtpSender::SetSend
pc/rtp_sender.h
备注:
1获取track中source的配置(3A处理相关选项)
2 voice_media_channel()->SetAudioSend(ssrc_, track_enabled, &options,
                                               sink_adapter_.get());
                                               
WebRtcVoiceMediaChannel::SetAudioSend
media/engine/webrtc_voice_engine.h

WebRtcVoiceMediaChannel::SetOptions
media/engine/webrtc_voice_engine.h

WebRtcVoiceEngine::ApplyOptions
media/engine/webrtc_voice_engine.h

modules/audio_processing/audio_processing_impl.h
AudioProcessingImpl::ApplyConfig
相关推荐
这是程序猿10 小时前
ComfyUI 教程合集|AI绘图、ControlNet、Lora、IPAdapter、视频生成全攻略
大数据·人工智能·windows·音视频
ai产品老杨11 小时前
解构企业级AI视频中台:基于X86/ARM与GPU/NPU异构架构的深度演进与源码交付实践
arm开发·人工智能·音视频
AI服务老曹12 小时前
打破设备割裂:基于 GB28181 与 RTSP 的边缘计算 AI 视频平台架构解析(附源码交付与 Docker 部署)
人工智能·音视频·边缘计算
AI服务老曹12 小时前
深度解析:支持异构计算与 Docker 部署的 AI 视频管理平台——基于 GB28181/RTSP 与源码交付的架构实战
人工智能·docker·音视频
maaath12 小时前
【maaath】Flutter for OpenHarmony 跨平台工程集成音视频播放能力实战
flutter·华为·音视频·harmonyos
weixin_4514315613 小时前
HLS加密流解码异常导致视频花屏?通用技术解析及合规指引
网络·音视频
metaRTC1 天前
metaRTC8 成功适配 RTOS:开启 MCU/嵌入式实时音视频新时代
单片机·嵌入式硬件·webrtc·实时音视频·rtos
reasonsummer1 天前
【教学类-160-11】20260419 AI视频培训-练习011“豆包AI视频《佛源植语》+豆包图片风格:无(关键词:藏传唐卡)”
数据库·音视频·豆包
彷徨而立1 天前
音频编码格式 G.729 和 G.729A 的区别
音视频
EasyDSS1 天前
私有化视频会议平台/视频直播点播/高清点播/音视频点播EasyDSS“直播+点播+会议”全场景融合解锁视频协作新体验
音视频