为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
本插件封装了百度语音识别的在线/离线识别移动端开放SDK。同时支持语音唤醒功能。语音唤醒,需要配置所需语言模型文件(基础资源文件)及官网导出的自定义唤醒词文件,配置后加载引擎,即可进行开始唤醒。语音唤醒为离线功能,需配置离线授权信息(APP_ID),加载唤醒所需语言模型文件。
使用此插件之前需先配置 config.xml 文件,方法如下
<!--android 配置方法-->
<meta-data name="com.baidu.speech.APP_ID" value="10665882"/>
<meta-data name="com.baidu.speech.API_KEY" value="M0EXftb4K00yqN4SjYrQF3Th"/>
<meta-data name="com.baidu.speech.SECRET_KEY" value="1b010d38a92073fd7c44da733aaa5f58"/>
<!-- iOS 配置方法 -->
<feature name="bvRecognizer">
<param name="ios_sr_appid" value="8989834"/>
<param name="ios_sr_apikey" value="8MAxI5o7VjKSZOKeBzS4XtxO"/>
<param name="ios_sr_secretkey" value="Ge5GXVdGQpaxOmLzc8fOM8309ATCz9Ha"/>
</feature>
字段描述: http://ai.baidu.com com.baidu.speech.APP_ID:是百度语音开放平台获取的 appid。appid 申请方法参考百度语音开放平台接入文档。
com.baidu.speech.API_KEY:百度语音放平台获取的 key申请方法参考百度语音开放平台接入文档。 com.baidu.speech.SECRET_KEY:百度语音放平台获取的 secret申请方法参考百度语音开放平台接入文档。
开始语音识别
startListening({params}, callback(ret))
infile:
-类型:字符串 -描述:(仅支持安卓)(可选项)音频源文件路径 (只支持 fs://)文件格式pcm
VadEndPoint:
language:
类型:数字类型
描述:(可选项)(在线)根据识别语种,搜索或输入法模型及是否需要在线语义,来选择PID。 默认:cmn-Hans-CN
outfile:
volume:
offLineSet:
{
grammarPath:'' //字符串类型;离线语音识别语法配置文件路径; 请在 [官网](http://speech.baidu.com/asr) 参考模板定义语法,下载语法文件;支持widget://和fs://
slotData:{ //(可选项)JSON对象;动态定义覆盖离线词文件中的‘词条’ **该参数仅支持安卓**
name:[{'王刚'},{李明}]
}
}
ret:
{
status:true, //布尔类型:true 识别成功,false失败
result:'' // 字符串类型; 引擎返回的识别结果 status为true返回;
}
err:
- 类型:JSON 对象
- 内部字段:
{
code:'' //数字类型:错误码 识别错误返回;
descMessage:'' //字符串类型:错误描述信息;
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.startListening({
infile: 'fs://luyin1.pcm',
outfile:'fs://outfile.pcm',
VadEndPoint:0,
language:'cmn-Hans-CN',
},function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
长语音识别
longVoiceListening({params}, callback(ret))
language:
类型:数字类型
描述:(可选项)(在线)根据识别语种,搜索或输入法模型及是否需要在线语义,来选择PID。 默认:cmn-Hans-CN
type:
ret:
{
status:true, //布尔类型:true 识别成功,false失败
result:'' // 字符串类型; 引擎返回的识别结果 status为true返回;
}
err:
- 类型:JSON 对象
- 内部字段:
{
code:'' //数字类型:错误码 识别错误返回;
descMessage:'' //字符串类型:错误描述信息;
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.longVoiceListening({
type:'ModelVAD'
language:'cmn-Hans-CN',
},function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统
可提供的1.0.0及更高版本
语音文件识别
sourceFileListening({params}, callback(ret))
language:
类型:数字类型
描述:(可选项)(在线)根据识别语种,搜索或输入法模型及是否需要在线语义,来选择PID。 默认:cmn-Hans-CN
infile:
ret:
{
status:true, //布尔类型:true 识别成功,false失败
result:'' // 字符串类型; 引擎返回的识别结果 status为true返回;
}
err:
- 类型:JSON 对象
- 内部字段:
{
code:'' //数字类型:错误码 识别错误返回;
descMessage:'' //字符串类型:错误描述信息;
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.sourceFileListening({
infile:'widget://res/luyin1.pcm',
language:'cmn-Hans-CN',
},function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统
可提供的1.0.0及更高版本
停止语音识别;
stopListening()
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.stopListening();
iOS系统,Android系统
可提供的1.0.0及更高版本
取消语音识别;
cancel()
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.cancel();
iOS系统,Android系统
可提供的1.0.0及更高版本
设置音量监听
setVolumeChangeListener(callback(ret))
ret:
{
volume: 10 // 数字类型; 实时音量大小,单位:分贝(db)
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.setVolumeChangeListener(function(ret) {
console.log(JSON.stringify(ret));
});
iOS系统,Android系统
可提供的1.0.0及更高版本
开始唤醒
startWakeup(params,callback(ret))
wakeupFilePath:
ret:
{
status: 'start' // 引擎开始工作(仅ios返回)
'loaded' // 唤醒引擎加载完成
(仅ios返回) 'triggered' // 命中唤醒词
wakeupWords:'百度一下' //唤醒词
}
err:
{
code:200183066 //错误码
msg:'' //错误信息
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.startWakeup({
wakeupFilePath:'widget://res/WakeUp.bin'
},function(ret) {
console.log(JSON.stringify(ret));
});
iOS系统,Android系统
可提供的1.0.0及更高版本
结束唤醒
stopWakeup(callback(ret))
ret:
{
status: 'unLoaded' // 唤醒引擎卸载完成
}
var bvRecognizer = api.require('bvRecognizer');
bvRecognizer.stopWakeup(function(ret) {
console.log(JSON.stringify(ret));
});
iOS系统,Android系统
可提供的1.0.0及更高版本
为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。