只想记录下这个看似神奇的问题。
问题描述:终端厂商反馈蓝牙打电话时高概率无声音,手机显示声音在HF端,但是相同软件,相同硬件,相同手机,
到了原厂(即换了一个地点)就测不到了,再回到客户公司,又会高概率出现。
从相同软硬件,相同手机,两个地方结果完全不同来看,应该是与环境有关;
蓝牙通话时,可能有影响的环境首先想到的就是2.4GHz的信号;
但从现象来看,表现是蓝牙完全无声音,且不会断开;
若是干扰导致,应该不至于完全无声音,而是声音失真,
若是环境更差,达到所有eSCO包全部丢失的情况,那么应该不足以维持链路的连接,表现应该蓝牙断开;
综上所述,问题原因应该与环境有关,但不是蓝牙的环境。
既然空中数据异常排除,也就是数据应该是送到了Host端,那么就应该通过对HF端音频通道的分析,
定位音频失声发生在哪个节点。
通过Audio的调试工具,定位声音已送到AUDIO模块,但没有被AUDIO输出,通过AUDIO log发现,
声音在经过消噪消回音阶段后丢失,而这一动作是在Modem模块处理的,因此,怀疑是modem模块异常,
导致了声音丢失,而modem关联的4G信号同样受环境影响,因此,基本定位与4G信号有关。
因此,进一步试验发现:
1.关闭SIM卡功能,未复现到问题;
2.接4G天线,未复现;
3.打开SIM卡问题出现;
5.拔掉4G天线,打开SIM卡功能,问题出现;
进一步证实与4G信号有关,也就解释了与环境有关的行为。
最后得出结论,4G信号原因导致modem异常,进而导致了蓝牙Audio通路的消噪消回音功能,最终导致了蓝牙通话没声音问题的出现。