写在开始
这篇文章整理项目中比较有代表性的 ANC 问题单,并按问题现象归为五类。
有些问题标题虽然带有 ANC,但最后确认是电量、功耗或连接问题,这里不展开。本文只保留能够放回 ANC 控制链路解释的问题,没有明确结论的地方也不补充猜测。
先把 ANC 控制流程简化成四步:
1. 收到切换请求
↓
2. 确定并同步目标模式
↓
3. 加载参数,更新实际效果
↓
4. 保存状态并上报 App
本文围绕下面五类问题,整理对应的问题现象和排查思路:
一、实际模式正常,App 显示却不对
问题现象 1
从耳长按切换 ANC 后,耳机实际已经切换,App 仍显示原来的模式;
排查思路 1
先确认三个结果:从耳是否识别到长按、左右耳实际模式是否变化、主耳是否向 App 上报了新状态。
如果从耳和两耳实际模式都正常,重点查主耳是否收到新的目标模式、更新本地状态并上报 App。问题单中,从耳已经完成 ANC 切换,但主耳没有更新状态并发送新模式,因此问题出在主耳的状态同步和上报链路。
问题现象 2
耳机实际是高降噪,App 却显示低降噪;重新进入 App 后,等级还会发生跳变。
排查思路 2
对照耳机内部等级、协议值和 App 显示值是否一致。问题单中,耳机使用 1 表示低降噪、3 表示高降噪,App 却映射成1是高降噪,3是低降噪,导致高低等级颠倒。这是状态映射错误,不是 ANC 参数没有生效。
二、单耳和双耳切换后,ANC 状态混乱
问题现象 1
开盖后迅速取出一只耳机,两耳随后已经连接,ANC 却仍保持单耳模式,没有恢复双耳记忆状态。
排查思路 1
重点看出盒事件和 TWS 回连的先后顺序。问题单中,耳机开盖后快速出盒,出盒事件先触发了 ANC 评估;由于此时 TWS 还没有建立连接,系统按单耳状态选择了模式。随后两耳虽然完成了 TWS 连接,但没有重新评估 ANC,最终继续使用单耳记忆模式。
处理时要在 TWS 建立连接并完成状态同步后,重新评估 ANC 模式。如果重新评估出的模式与当前模式不一致,就更新 ANC 状态,并将新状态重新上报给 App。
问题现象 2
App 切换 ANC 后,快速将一只耳机入盒,之后单耳使用时,左右耳保存的 ANC 模式不一致。
排查思路 2
先查两只耳机开机时从 Flash 恢复的 anc_local 是否一致。如果开机时就不一致,说明问题发生在上一次 ANC 状态同步或保存阶段。重点检查 App 下发或单耳切换后,TWS 是否把状态同步给对耳,以及两边是否都完成了状态更新和保存。
问题单中已经确认,App 切换 ANC 后快速将一只耳机入盒,App 下发的状态没有及时同步给从耳,导致两只耳机后续保存了不同的单耳 ANC 状态。处理时要确保 TWS 同步成功、对耳完成更新后,再进入后续保存流程;如果开机时两边的值一致,运行后才出现差异,再检查本次 TWS 同步和模式更新。
三、按键或 App 操作后,ANC 没有切换
问题现象 1
耳机恢复出厂后,长按可以识别,但无法切换 ANC。
排查思路 1
先看长按后有没有产生 ANC 切换请求。问题单中,恢复出厂后按键表没有同步,长按没有正确对应 ANC 功能。
可以分两种情况:
- 没有产生 ANC 切换请求:查按键识别、按键表和 App 按键配置;
- 已经产生正确请求:再查目标模式和 ANC 更新流程。
四、模式切换成功,降噪效果却不对
问题现象 1
App 可以切换低、中、高降噪,但实际效果顺序不对,例如中降噪反而比高降噪更强。
排查思路 1
先在相同噪声环境下分别测试低、中、高降噪,再检查每个等级实际加载的参数是否对应。问题单中是等级和参数对应错误,导致中降噪加载了更强的参数。修正对应关系后,低、中、高的效果恢复为逐级增强。
问题现象 2
左右耳都显示同一个模式,但降噪强度明显不同。
排查思路 2
模式一致只说明控制状态相同,还要继续比较左右耳加载的参数、麦克风校准值和声学一致性。问题单最终通过声学参数校准处理;如果控制日志一致,问题通常不在应用层状态机。
问题现象 3
通透模式持续有进气声,或者用手遮住耳机后出现啸叫。
排查思路 3
优先检查声学参数、麦克风通路和防啸叫能力。问题单中分别通过更新声学参数、加入防啸叫算法改善;如果启用算法受内存限制,还要确认当前资源是否足够。
五、切换 ANC 时出现杂音、短暂无声或突变
问题现象 1
切换到降噪后出现明显杂音或底噪。
排查思路 1
先区分杂音只出现在开启瞬间,还是会持续存在。瞬间杂音可先检查 ANC 淡入,持续底噪则继续查声学参数和麦克风通路。
问题现象 2
通话中从降噪切到通透,一只耳机短暂无声。
排查思路 2
通话中切换 ANC 会重新配置音频链路,两耳更新时机不一致时,可能出现单耳短暂无声。分别记录两耳收到目标模式、开始更新参数和恢复通话音频的时间,判断是单耳更新失败,还是两耳时间差过大。问题单的处理方向是加强 TWS 同步。
问题现象 3
在高、中、低降噪之间切换时,会短暂听到类似通透的效果。
排查思路 3
这是滤波器切换过程中的短暂听感,可通过调整淡入淡出步长改善。验证时要同时关注切换时长、突变感和听感平滑度。
六、最后总结
ANC 问题看起来都是“降噪不对”,排查时可以先分三层:
请求层:按键或 App 是否给出了正确目标模式
状态层:左右耳、保存值和 App 显示是否一致
效果层:参数、校准和音频通路是否真正更新
按键不能切换时先查请求;单耳、双耳或 App 显示混乱时查状态同步;模式正确但听感不对时,再进入参数、校准和算法。先分层,再看日志,通常比一开始就在 ANC 底层里找原因更清楚。