WebRTC 音频处理流程(一)

1、不积硅步无以至千里,不积小流无以成江河

这段时间有些跳跃式的看了很多WebRTC 资料,以及看了些片段源码,想下笔做下记录却发现无从下手。纠结了两三个星期,竟然没有一丝的进步,看了忘记,忘记了再搜资料看,几乎进入了死循环,感觉进步不大,痛定思痛,思考良久决定按照以下方法入手:画好总体流程 -> 标记函数调用关系 -> 逐步分析 ->做好记录。一点一滴积累,如此循环分析完整个项目。

2、音频处理函数调用关系

音频处理函数调用关系:



  WebRTC 音频处理流程(一)

3、音频模块主要流程图

WebRTC 音频处理流程(一)

音频采集模块  :负责音频数据的采集。
控制模块         :通过无锁队列对采集到的数据进行管理(数据下发,继续采集)。
预解复用         :音频数据的处理语音前后处理算法,如回声消除、噪声抑制、增益控制、静音检测、舒适噪声等。
解复用       :数据解复用(尚未确定)。
编码发送       :NetEQ 网络抗抖技术等。
 
接下来的章节会一一做好详细分析。