DTMF检测问题的debug方法

客户自行开发new feature的时候,会用到DTMF检测,另外,我们内部的Auto Answer Machine也会用到,出现检测错误

的时候,可以参考此方法进行debug.

[SOLUTION]来自半导体社群

首先,需要确定是否有正确调用start DTMF检测的函数.

其次,看log,网络那边是否有IND发下来,我们这边是否有检测到.

抓log的时候,filter请打开:MOD_MED,MOD_MMI_APP,MOD_L1SP,MOD_L1SPHISR all classes on.

如果没有IND下来,请FT帮忙查看当前网络部分是否有问题.

如果有检测到,但是检测到的值是错误的话,可以参考如下debug方法:

把kt_detect.c里面的

//#define KT_DETECT_DEBUG

打开

开启debug 功能吼,每一次开启ktDetect会产生一个只有十秒的录音档案C:\KTDDdebug.pcm ,C:\ 可能要从META才可

以读取?如果需要换到SD card,需要变更code里面指定的磁碟。

因为只能录十秒,所以要在通話的一开始十秒就复制出來,如果不行的話,可以加大

static uint16 ktDDPcmDebugBuf[80000]; // for debug

以及

if( pcmDebugCnt < 80000 )

以上请在ktDetect.c中搜寻80000,然后统一修改成想要的值就可以加大录制的時间。

将复制出來的log 与PCM档、以及客戶所按的按键是哪些、错误检测而出现的又是哪一个数字等资讯拿到,我们再来进

行分析.

另外,需要注意的是,我们的DTMF检测本身存在误检测率,大致为5%.

你可能感兴趣的:(DTMF检测问题的debug方法)