问题描述
测试原理:
测试APK 产生一个脉冲,播放出来后Record下来再播放。
Loopback App.0.4.apk可以看到波形 。
至少要能看到四个等间距的脉冲,不能有太大底噪 。
CtsVerifier.apk用来测试并显示结果 ,Pass or Fail 。
超过0.6 即为pass ,有一个Level pass 即可 。
下面是在MTK Demo Phone上Dump的 Stream out 波形图 。
硬件准备:
按照Google原理图制作Dongle,保证在对比机Nexus上能pass,并且波形正确。
确认MIC 电路是ACC Mode还是DCC Mode,确保软硬件一致。
手机上要能看到耳麦的图标 。Dongle和耳机插孔标准要一致(中国标or 国际标准)。
通过条件:
1要有稳定的等间距脉冲 ,使用User 或者Userdebug 版本测试。通过Loopback App.0.4.apk可以看波形 。
2 中心是 0 dB,不能有直流分量 。
3 Noise 小于 -54 dB
常见问题分析:
1 确认Speech参数是否和MTK 最新版一致
NVRAM 架构更新 /vendor/mediatek/proprietary/custom/common/cgen/cfgdefault/sph_coeff_record_mode_default.h
XML 架构更新 /device/mediatek/common/audio_param/Record_AudioParam.xml
2 中心不是0dB,Record电路可能会导入直流分量
更新 vendor\mediatek\proprietary\external\AudioSpeechEnhancement 下面库文件去直流。
3 HW Noise 太大,导致Fail 。 可以通过调小Volume Level 和PGA Gain ,防止HW Noise 被放大。
4 客户自行添加的音效处理也可能会造成Fail ,可以关掉音效测试 。
解决方案
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<span style="font-family: arial, helvetica, sans-serif;">1. adb pull /system/etc/audio_param/Record_AudioParam.xml 2. open Record_AudioParam.xml a. 確認 FastRecord 的 param_id <Param path="FastRecord" param_id="9"/> b. 修改對應 param_id 的 參數 <ParamUnit param_id="9"> <Param name="record_mode_para" value="870,0,0,0,0,0,0,26122,0,0,0,0,0,0,0,26214,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"/> </ParamUnit> 3. adb push Record_AudioParam.xml /system/etc/audio_param/ 4. adb reboot</span> |