一、问题简介
有客户反馈,使用KT148A的芯片的语音组合播放指令,效果不理想,体现在语音和语音之间有间隔,导致整体播放显得不连贯
二、解决方法
2.1 手册中关于组合播放的描述
void oneline_test_CMD_F3(void){
oneline_send_one_data(0xF3) ;
udelay(20) ;/*延时25ms*/
oneline_send_one_data(0x01) ;
udelay(20) ;/*延时25ms*/
oneline_send_one_data(0x02) ;
udelay(20) ;/*延时25ms*/
oneline_send_one_data(0x03) ;
udelay(20) ;/*延时25ms*/
} 组合播放第1段、第2段、第3段声音,依次按照顺序播放。如果需要停止,可以发送FE指令
同时,在组合播放的过程中,接收到新的组合播放数据,会停止当前的组合播放,转去播放新的指令
==》这里可以看出来,芯片是一次性收完需要组合播放的全部语音地址号,完毕之后就会逐个逐个的去播放,直到播放完毕。
==》芯片内部的处理机制,就是当一次性收完客户需要组合的语音指令之后,全部排排队去播放,也就是播放1号文件,然后停止,再启动2号文件去播,以此类推,直到全部播放完毕
2.2 出现不连贯---处理方法1
1、使用音频编辑软件,把音源的头部和尾部的空白部分截掉,至于操作的方法,详见手册的如下资料
2、这一个步骤需要借用电脑端的PC软件,文档也有说明,也提供了相关的软件工具,可以详细看看
2.3 出现不连贯---处理方法2
1、在生成音源的时候,看能不能适当的降低单个音源的播放速度
==》因为芯片内部没有可优化时间的地方,从第一个播放完,到开启第二个,怎么样都会有50ms左右的延时
==》一旦你音源的播放速度很快,再组合起来播放,就会显得不连贯
==》尝试降低单个音频的播放速率,这样也可以解决这个问题,对于产品的用户体验也没什么影响。
==》有客户就是这样去处理的,这里也只是给个大概的建议,仅供参考
审核编辑 黄昊宇
全部0条评论
快来发表一下你的评论吧 !