问答1 问答5 问答50 问答500 问答1000
网友互助专业问答平台

音视频开发工程师:WEBRTC AEC3 算法原理

提问网友 发布时间:2025-01-02 18:03
声明:本网页内容为用户发布,旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:1656858193@qq.com
1个回答
热心网友 回答时间:2025-01-07 10:54
WebRTC AEC3算法原理详解

AEC3延迟估计算法在计算滤波器能量最大块作为延迟估计值,与AEC的非线性处理的延迟估计算法思想一致。该算法由步长为0.7的5个时域NLMS自适应滤波器组成,每个滤波器默认32块,每块16个sample共512点,5个滤波器之间互相重叠8块。输入信号在时间上重叠,滤波器的输入信号是经过分频后的0~16kHz低频段信号然后经过4倍下采样,采样率为4000Hz。通过计算,最多能估计2048/4000 = 512ms的延迟。

滤波器更新使用NLMS更新公式,根据滤波器更新条件计算每个滤波器的延时值。延时值的可信度也是需要考虑的因素。从5个滤波器中挑选最佳延时值估计,挑选方法为滤波器更新且可信度为真,且accuracy最大作为延时值估计。accuracy为近端能量与误差能量之差。

使用大小为250的历史窗口统计历史延时值,当出现次数大于20次,认为这是一个质量较高的估计值。延时值过滤也需考虑,质量好的延时值和质量差的延时值都会用来进行远端对齐,当上一次延时值和当前延时值的质量都是高的情况下会有一个迟滞量,即延迟增量小于某一阈值时认为延时相较于上一次没有改变。

时钟漂移检测使用大小为3的历史窗口判断时钟漂移是否产生,窗口内的值时前3个历史时刻延时估计值。判断标准为d1,d2,d3分别时历史窗口历史值与当前时刻延时值之差。增量漂移和减量漂移的判断标准分别为d1==-1且d2==-2 或d1==-2且d2==-1 d3==-3确认产生,d1==1且d2==2 或 d1==2且d2==1 d3==3确认产生。目前aec3只做了时钟漂移检测,没有做相应处理。

线性回声消除使用主辅滤波器结构,主滤波器是一个精简版的频域分块的kalman滤波器,计算的是滤波器抽头系数误差协方差的平均,而不是计算每块滤波器抽头系数的误差协方差,回声路径跟踪能力和双工效果比PBFDAF效果要好一些,但比起kalman滤波器又差了点,相当于在计算量上和效果上做了权衡。辅滤波器是PBFDAF,会一直更新,能快速对回声路径进行追踪,当辅滤波器发散时主滤波器系数拷贝至辅滤波器。

窄带信号检测算法是自适应滤波器对窄带信号的处理,主要原因是窄带信号会导致自适应滤波器朝着错误的方向收敛,最终导致滤波器发散和回声泄漏。主滤波器更新方式包括通过计算主滤波器系数的失调增益调整滤波器系数和通过系数更新公式更新滤波器系数。

选择线性回声消除结果使用主滤波器误差还是使用辅滤波器误差,然后进行平滑过渡。非线性回声消除原理主要思想是通过估计残余回声以及噪声,设计一个滤波器,以达到去除残余回声的目的,这实际上与降噪算法非常类似。AEC3算法对工程化做了大量的处理,包括延迟估计算法、处理回声路径变化、初始状态设置、线性回声消除以及非线性回声消除,其中的每一部分内还有更多复杂的细节及逻辑。
热心网友 回答时间:2025-01-07 10:59
WebRTC AEC3算法原理详解

AEC3延迟估计算法在计算滤波器能量最大块作为延迟估计值,与AEC的非线性处理的延迟估计算法思想一致。该算法由步长为0.7的5个时域NLMS自适应滤波器组成,每个滤波器默认32块,每块16个sample共512点,5个滤波器之间互相重叠8块。输入信号在时间上重叠,滤波器的输入信号是经过分频后的0~16kHz低频段信号然后经过4倍下采样,采样率为4000Hz。通过计算,最多能估计2048/4000 = 512ms的延迟。

滤波器更新使用NLMS更新公式,根据滤波器更新条件计算每个滤波器的延时值。延时值的可信度也是需要考虑的因素。从5个滤波器中挑选最佳延时值估计,挑选方法为滤波器更新且可信度为真,且accuracy最大作为延时值估计。accuracy为近端能量与误差能量之差。

使用大小为250的历史窗口统计历史延时值,当出现次数大于20次,认为这是一个质量较高的估计值。延时值过滤也需考虑,质量好的延时值和质量差的延时值都会用来进行远端对齐,当上一次延时值和当前延时值的质量都是高的情况下会有一个迟滞量,即延迟增量小于某一阈值时认为延时相较于上一次没有改变。

时钟漂移检测使用大小为3的历史窗口判断时钟漂移是否产生,窗口内的值时前3个历史时刻延时估计值。判断标准为d1,d2,d3分别时历史窗口历史值与当前时刻延时值之差。增量漂移和减量漂移的判断标准分别为d1==-1且d2==-2 或d1==-2且d2==-1 d3==-3确认产生,d1==1且d2==2 或 d1==2且d2==1 d3==3确认产生。目前aec3只做了时钟漂移检测,没有做相应处理。

线性回声消除使用主辅滤波器结构,主滤波器是一个精简版的频域分块的kalman滤波器,计算的是滤波器抽头系数误差协方差的平均,而不是计算每块滤波器抽头系数的误差协方差,回声路径跟踪能力和双工效果比PBFDAF效果要好一些,但比起kalman滤波器又差了点,相当于在计算量上和效果上做了权衡。辅滤波器是PBFDAF,会一直更新,能快速对回声路径进行追踪,当辅滤波器发散时主滤波器系数拷贝至辅滤波器。

窄带信号检测算法是自适应滤波器对窄带信号的处理,主要原因是窄带信号会导致自适应滤波器朝着错误的方向收敛,最终导致滤波器发散和回声泄漏。主滤波器更新方式包括通过计算主滤波器系数的失调增益调整滤波器系数和通过系数更新公式更新滤波器系数。

选择线性回声消除结果使用主滤波器误差还是使用辅滤波器误差,然后进行平滑过渡。非线性回声消除原理主要思想是通过估计残余回声以及噪声,设计一个滤波器,以达到去除残余回声的目的,这实际上与降噪算法非常类似。AEC3算法对工程化做了大量的处理,包括延迟估计算法、处理回声路径变化、初始状态设置、线性回声消除以及非线性回声消除,其中的每一部分内还有更多复杂的细节及逻辑。

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

陈皮白茶多少钱一斤 陈皮白茶价格多少钱一斤 "妈妈我爱你真的爱你我在5月12号这一天真心祝福你天天开心工作顺利... 手脚上长小水泡,很痒,是湿疹还是疱疹 手起疱了怎么回事 【健康问答】手上起小水泡痒怎么办 手上长水泡很痒怎么办 扇形罗马帘如何安装 如何做罗马帘 苹果电脑怎么上传图片苹果手机上照片怎么传到苹果电脑上 苹果电脑导入照片照片怎样从苹果电脑传输到手机 苹果电脑之间如何传输照片苹果电脑怎么导入手机照片 苹果笔记本怎样把照片导入手机里 苹果电脑怎么使用手机传文件苹果手机怎么和电脑传输 暗黑2打通关后怎么找不到暗黑破坏神怎么找暗黑破坏神 为什么要算递延所得税 什么叫递延所得税费用 递延所得税属于什么 递延所得税是什么时候 优秀团员青年推荐表,主要表现怎么填? 主要表现,不用太长,三百字左右... 男人都是怎么发现女友出轨的? WebRTC这么火,前端靓仔,请收下这篇入门教程 18个实时音视频开发中会用到开源项目 女主叫杨沫沫的文是什么 探马沟村概况 埝掌镇文化遗址 三坡底村村庄简介 高质量的成熟文案(特别高级的成熟短句) 高质量的成熟文案(表示成熟的文案句子) 特别成熟的人生句子(经典走心的成熟文案) 高质量的成熟文案(关于成熟的句子) 关于成熟的文案句子(高质量的成熟句子) 温度测试纸 angelababy直播秀美颜是什么节目 男女之间有没有日久生情的说法? 银行贷款连带责任担保有期限吗 RTX显卡排名 英伟达显卡哪个系列好 NVIDIA英伟达RTX2080 SUPER 8专业图形显卡推荐 耳膜穿孔耳鸣怎么办 耳朵听力不好跟耳膜穿孔有很大关系吗?
Top