音频算法
零、前言
本系列介绍Webrtc的agc算法。webrtc的agc算法对各种情况作了较为详尽的考虑,而且使用了的定点数的方法来实现,因此内容比较多。尽量在这几篇文章中描述清楚。
一、AGC的三个流程
| 函数 | 调用 | 功能 |
|---|---|---|
| ProcessRenderAudio | 远端输出前 | 调用AGC的WebRtcAgc_AddFarend |
| AnalyzeCaptureAudio | 近端高通滤波器后 | 根据模式,可变模拟(kAdaptiveAnalog)调用WebRtcAgc_AddMic,可变模拟(kAdaptiveDigital)调用WebRtcAgc_VirtualMic |
| ProcessCaptureAudio | 近端VAD后输出前 | 调用AGC的WebRtcAgc_Process |
这三个流程是AGC的主要接口。下面将会对这些三个流程进行详细的介绍。
二、ProcessRenderAudio
首先介绍ProcessRenderAudio,这个函数在远端调用,主要目的是分析远端信号的VAD属性。调用了AGC中的WebRtcAgc_AddFarend函数。实际上WebRtcAgc_AddFarend函数只是做了一些参数的校验,最后调用了WebRtcAgc_AddFarendToDigital,WebRtcAgc_AddFarendToDigital调用到了WebRtcAgc_ProcessVad。

本文深入探讨WebRTC的自动增益控制(AGC)算法,涵盖ProcessRenderAudio、AnalyzeCaptureAudio和ProcessCaptureAudio三个关键流程。ProcessRenderAudio分析远端信号的VAD属性,AnalyzeCaptureAudio分析未处理声音,而ProcessCaptureAudio作为处理核心,涉及音量调节和WebRtcAgc_Process调用。不同AGC模式下,处理逻辑有所差异。
&spm=1001.2101.3001.5002&articleId=52595850&d=1&t=3&u=aa82a12b7b114a02b22c9d8fa56cada3)
9831

被折叠的 条评论
为什么被折叠?



