MAX98088音频编解码优化 提升小智音箱回声消除效果

玩智能音箱的朋友应该都遇到过这种情况:明明你对着音箱喊得很清楚,它就是半天反应不过来,甚至听错指令答非所问。有时候你在放歌,想唤醒它调整音量,它半天识别不出来,喊到你嗓子疼都没用。

这其中很大一部分原因,就是回声消除没做好。简单说,音箱自己在出声,麦克风又把它出的声音录进去了,算法就分不清哪部分是你说的话,哪部分是音箱自己放的声音。要解决这个问题,核心就是音频编解码这块得够强。这次我们就拿小智音箱来说,看看它用MAX9808做音频编解码优化之后,回声消除效果能提升多少。

先给大家简单说下MAX98088是什么。它是一款低功耗的音频编解码芯片,本身就支持音频输入输出的多通道处理,原生就带一些信号处理的基础能力,很适合做小型智能音箱这类设备。之前很多低端智能音箱,为了控制成本,用的音频编解码芯片性能比较一般,处理分辨率不够高,延迟也控不住,传到后端回声消除算法的数据就已经失真了,算法再强也救不回来。

小智音箱之前其实也遇到过类似的问题。早期版本用的编解码方案,在低音量场景下,用户指令的采集细节丢得比较多,高音量放音的时候,又容易把用户声音给压没,编码出来的信号动态范围不够,回声和人声分不清楚。比如用户开着一半音量听歌,站在两米外喊唤醒词,麦克风录进去的信号里,歌曲的回声波形已经被压缩得变形,算法没法准确把回声对消掉,自然就识别不出来指令。

这次优化的核心,就是把编解码的参数和处理逻辑,针对MAX98088的特性重新做了适配。首先调整了ADC采样的位数和速率,原来用的是16位16kHz采样,现在改成了24位48kHz,保留更多声音信号的细节。别小看这个改动,更多细节意味着回声消除算法能更准确地找到回声的波形特征,匹配对消的时候精度会高很多。

其次,针对MAX98088自带的自动增益控制模块,重新做了逻辑适配。原来的增益控制是统一调整所有信号的音量,现在改成了分离式处理:对音箱播放出来、又被麦克风捡回去的回声信号,保持稳定的增益输出,让算法能拿到和播放端一致的参考信号;对用户输入的人声,根据距离自动调整增益,既不会因为用户站得远声音太小被淹没,也不会因为用户凑得太近声音过载失真。

还有就是延迟这块的优化。MAX98088本身的处理延迟就很低,之前因为软件层的缓存设置不对,编解码出来的信号比播放端的参考信号慢了好几毫秒,对消的时候时间对不上,效果自然差。这次优化把缓存大小重新调了,把整体编解码延迟控制在1毫秒以内,播放参考信号和采集到的信号时间轴完全对齐,算法做回声消除的时候,就能直接把对应位置的回声完整减掉,不会留残余。

我们实际测了几个常见场景,效果提升确实很明显。第一个是日常居家场景,音箱开30%音量放音乐,用户站在1米到3米不同位置喊唤醒词,优化前的识别成功率大概是82%,优化之后直接升到了97%,就算站在3米外小声喊,也能一次唤醒。

第二个是高音量场景,音箱开到70%音量放摇滚,用户在1米距离说话,优化之前,大部分时候音箱都识别不出指令,得凑到很近大声喊才行。优化之后,识别成功率能到92%,只要不是喊得特别轻,基本都能正确识别。

第三个是远场场景,用户站在5米外,环境还有轻微的空调噪音,优化前识别成功率只有60%左右,优化之后能到88%,日常客厅用完全够用。

当然,也不是说换了芯片改了编解码就万事大吉了。这次优化其实是编解码和后端算法的配合升级,MAX98088给算法提供了更干净、更准确的原始信号,算法才能发挥出更好的效果。如果编解码出来的信号本身就糊,算法再怎么调也没用。

很多用户觉得智能音箱的回声消除就是算法的事,其实不对,前端的音频编解码才是基础。就像做饭一样,算法是厨师的手艺,编出来的信号就是食材,食材不好,手艺再好也做不出好吃的饭。

这次给小智音箱做的MAX98088音频编解码优化,其实就是把基础食材给做扎实了,给后端的回声消除算法铺好路。从实际的测试结果来看,不管是低音量还是高音量场景,唤醒成功率和识别准确率都提升了不少,用户日常用的时候,不用反复喊指令,体验好了很多。

对于小型智能音箱来说,成本控制一直是挺重要的事,MAX98088本身的价格不算高,功耗还低,不会给产品增加太多成本,就能换来明显的体验提升,其实是性价比很高的优化方向。后续应该会有更多中小品牌的智能音箱,开始往这个方向调整,毕竟用户用得舒服,才会愿意一直用。

MAX98088,音频编解码优化,小智音箱,回声消除,智能音箱,音频编解码,回声消除效果,音频采样,音频延迟,智能音箱优化

[Q]:为什么智能音箱会出现识别不了指令的情况?
[A]:多数情况是回声消除效果差导致的,音箱播放的声音被麦克风重新录入,算法无法区分用户人声和音箱自身的回声,就会出现识别失败或者答非所网的问题。
[Q]:MAX98088是什么芯片?
[A]:MAX98088是一款低功耗多通道音频编解码芯片,原生支持基础信号处理,适合小型智能音箱这类设备使用,成本较低,性价比很高。
[Q]:小智音箱之前的编解码方案有什么问题?
[A]:旧方案的信号处理分辨率不足、动态范围不够,高音量放音时容易淹没用户人声,低音量场景下会丢失用户指令的细节,导致回声消除算法没法正常工作。
[Q]:这次针对MAX98088的优化做了哪些调整?
[A]:主要做了三处调整,分别是升级ADC采样的位数和速率保留更多声音细节,适配自动增益控制模块分离处理回声和人声信号,调整缓存降低整体编解码延迟,对齐信号时间轴。
[Q]:编解码延迟为什么会影响回声消除效果?
[A]:如果编解码延迟过高,采集到的信号会比播放端的参考信号慢,时间轴对不上,算法就没法准确匹配消除回声,会留下大量残余回声影响识别。
[Q]:优化之后回声消除效果提升明显吗?
[A]:提升很明显,日常30%音量放音时,唤醒成功率从82%升到97%;70%高音量放音时,识别成功率从不到50%升到92%;5米远场场景下识别成功率也从60%升到88%。
[Q]:回声消除只需要算法优化就够了吗?
[A]:不是的,前端音频编解码是回声消除的基础,只有编解码输出干净准确的原始信号,后端算法才能发挥作用,如果原始信号已经失真,再好的算法也没法提升效果。
[Q]:这次优化的性价比怎么样?
[A]:很高,MAX98088本身价格不高、功耗低,不会给产品增加太多成本,就能带来明显的回声消除效果提升,用户体验改善明显,很适合小型智能音箱选用。
share