音视频社交应用在近两年呈现飞速增长,随之增长的同样还有中国在线教育市场规模,可以说,实时音视频技术助力众多产业转型升级,并使得视频会议等经典应用场景重获新生。众多的新兴场景与行业借助实时音视频技术实现了更佳丰富炫目高效准确的场景表达与业务落地,同时也进一步促进了实时音视频的技术演进与行业探索。实时音视频正在各个千亿、百亿市场快速发展并逐渐成为基础设施型重要技术。
本篇讨论的实时音视频中的音频场景。音频信号被其移动终端采集模块采集,经过混音消除、降噪、自动增益控制等音频的前处理过程,由音频编码器进行编码。
其中前处理过程,Acoustic Echo Cancelling(AEC)、Automatic Gain Control(AGC)、Active Noise Control(ANC,也被称为noise cancellation、noise suppression)的使用方式,俗称 3A。
音频3A处理在不同的应用场景三者的处理顺序也不同,如在WebRTC中音频数据回依次经过AEC和NS(noise suppression) 或者 NS 与AECM(AECM 是WebRTC专门为移动端打造的算法,计算量低,而AEC 是为PC打造的)。而在AEC(回声消除算法),为什么需要这个算法呢?当一个设备在播放声音经过空间中的多次反射会被麦克风再次捕捉并采集到系统当中,这时音频的输入既有空间反射的回声也有本端说话声,如果缺少此模块就意味着通话中说话人一直可以听到自己的声音回来,这是非常差的一种体验,这当然是需要我们避免的。这里AEC的作用就是通过播放的参考信号跟踪出回声并从采集信号中把回声消除掉,随后再经过降噪处理去除噪声。而其中的AECM是在NS模块之后通过获取clean与noise数据进行分析,AEC则是NS模块之前直接获取noise数据进行分析。音频数据完成AEC与NS的处理后会进行AGC处理,其包括AAGC(模拟域的自动增益控制)与DAGC(数字域的自动增益控制)。其中AAGC的主要作用是通过系统的采集音量设置接口调整输入信号(大多用于PC端,移动端一般没有输入音量的系统接口),如借助Windows上的的API调整采集音量等参数。AAGC可为输入的音频数据带来明显的质量优化,如提高信噪比,避免输入信号溢出等。但由于我们服务的跨平台要求,我们需要构建一个面向多平台设备的框架,在不同的输入平台和设备都会有不同的输入音量,DAGC可以根据对输入信号的跟踪,尽量的调整信号到达期望大小(幅值或能量),从而避免不同设备采集带来的音量差异过大。完成AGC处理的音频数据,即可进入Audio Encode进行编码操作。
参考:
WebRTC AudioProcessing 3A: AEC AGC ANC 初探
教育场景下的实时音频解决方案
最后
以上就是野性秋天最近收集整理的关于实时音频Audio 3A处理初探的全部内容,更多相关实时音频Audio内容请搜索靠谱客的其他文章。
发表评论 取消回复