总结一篇热乎的【科大讯飞】SDK集成 常见问题!【离线唤醒】+【离线命令词】
近日,业务需要增加语音辅助功能到APP 上,于是就找到了2家比较好一点的SDK 【科大讯飞】和【百度语音】!
先说说各自的优缺点吧!各位新入手的小白能稍微从我这里得到一点信息!第一点最最重要的是钱!【科大讯飞】要钱,价格不是个人所能承担的!【百度语音】免费!免费!(个别功能)下面来看图把!
OK!大家可以自由选择平台SDK!
首先要说的!百度的API 文档特别详细,所有常量参数以及Demo 错误码 都特别好找!http://ai.baidu.com/docs#/ASR-Android-SDK/top,全部都在这个【离在线语音识别】,官方的Demo 也是下载后就能 在 Android studio 上运行!基础文件也只有WakeUp.bin ;baidu_speech_grammar.bsg ;和bdasr_V3_20171108_9800a2a.jar 包!不做过多赘述!
科大讯飞使用中容易忽视的几个坑!!
因为博主只是用到了【离线唤醒】+【离线命令词】2个功能!所以其他的不再本文中出现解释!另外讯飞官方Demo 根本就跑不起来,自己整理了一套【绝对的完整】 文末有GitHub链接。
【github demo】https://github.com/shangbeibei/KeDaXunFeiDemo
【准备】
导入jar包 Msc.jar ,Sunflower.jar其实没有多大作用!可不用!
【离线唤醒】
这个也没太大问题,主要问题有2处!
1.设置唤醒资源路径(在科大控制台后台设置唤醒词)
private String getResource() {
final String resPath = ResourceUtil.generateResourcePath(WakeDemo.this, RESOURCE_TYPE.assets, "iflytek/5a950c38.jet");
return resPath;
}
2.设置唤醒模式
// 设置持续进行唤醒(一般不要设置持续唤醒,配合UI 唤醒一次 停止一次)
mIvw.setParameter(SpeechConstant.KEEP_ALIVE, "0");
// 持续唤醒模式
mIvw.setParameter(SpeechConstant.KEEP_ALIVE, "1");
另外这里还有三个参数需要注意下,就是语音识别超时识别
// 设置语