AEC 算法主要依赖于 LMS 自适应滤波,即您更新 FIR 滤波器系数然后执行滤波。从理论上讲,FIR 必须与您要消除的最大回波长度一样长。例如,要消除 48kHz 信号上长达 500ms 的延迟,您需要一个 24000 点的 FIR。当您的内存和处理能力限制使您既不能为每个处理的样本执行 24000 个 MAC,也不能使用基于 FFT 的快速卷积算法时,有没有办法以更经济的方式消除这种潜在的高长度回波,给定的延迟是未知的并且可能是可变的?
我想知道也许其他一些并行运行的算法可以评估近似延迟,然后使用自适应长度延迟线 + 更短的自适应 FIR 滤波器(最多几百个抽头是可以的)
这有意义吗?还有其他整洁的方法可以建议吗?