科大讯飞本身有“语音+”平台,这里没有使用“语音+”而我使用的是其SDK,用来集成到自己的APP中。
其SDK按功能分为三种:
1.合成 即把文字转为语音(暂未使用)
2.识别 我们自己上传字库,然后科大讯飞的平台可以从语音中识别我们上传的字库
3.开放语义 类似于智能化的人机交互
我只是使用到了开放语义功能,科大讯飞SDK通过理解语义来生成JSON,然后我们解析JSON。使用的过程如下:
1.首先去注册科大讯飞的账号
2.选择开放语义的场景并和引用相关联(这里会得到一个APPID)
3.开始本地开发APP,导入科大讯飞的开放语义的SDK。
4.首先注册APPID,也就是说把本地应用程序和APPID相关联
//用户登录
SpeechUser.getUser().login(MainActivity.this, null, null
, “appid=” + getString(R.string.app_id), listener);
5.初始化语义理解对象:
speechUnderstander = SpeechUnderstander.createUnderstander(this)
6.清空Grammar_ID,防止语义理解后进行语义理解时Grammar_ID的干扰
speechUnderstander.setParameter(SpeechConstant.CLOUD_GRAMMAR, null)
7.设置语义理解的引擎
speechUnderstander.setParameter(“asi”, “1″)
speechUnderstander.setParameter(SpeechConstant.DOMAIN, “iat”)
8.设置采样率参数,支持8K和16K speechUnderstander.setParameter(SpeechConstant.SAMPLE_RATE,”8000″)
9.开始识别语义:speechUnderstander.startUnderstanding(listener)
10.实现监听器:SpeechUnderstanderListener,当触发startUnderstanding方法后,监听器开始工作,其可以监听语音(说话的开始到结束都会触发相对于的函数),然后分析结果。