txRealTimeRecognizer
概述
本模块封装了腾讯云实时语音识别的SDK
注意:本模块 iOS 平台上最低适配系统版本为 iOS 9.0
模块接口
init
初始化
init({params})
params
appid:
- 类型:字符串
- 描述:腾讯云 ID,即 AppID,腾讯云获取
secretId:
- 类型:字符串
- 描述:腾讯云安全凭证,腾讯云获取
secretKey:
- 类型:字符串
- 描述:腾讯云安全凭证,腾讯云获取
projectId:
- 类型:数字
- 描述:腾讯云projectId,腾讯云获取
sliceTime:
- 类型:数字
- 描述:(可选项)分片时间, 此参数影响语音分片长度, 单位:毫秒, 默认600ms
- 默认:600
enableDetectVolume:
- 类型:布尔
- 描述:(可选项)是否检测录音音量的变化, 开启后sdk会实时回调音量变化
- 默认:true
endRecognizeWhenDetectSilence:
- 类型:布尔
- 描述:(可选项)识别到静音是否结束识别
- 默认:true
authorize:
- 类型:布尔
- 描述:(可选项)是否需要授权,iOS端1.0.2版本后不再支持
- 默认:false
sn:
- 类型:字符串
- 描述:(可选项)授权序列号,authorize为true时必须填写,false可不填写,iOS端1.0.2版本后不再支持
deviceId:
- 类型:字符串
- 描述:(可选项)授权序列号,authorize为true填写有效,iOS端1.0.2版本后不再支持
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.init({
appid:'',
secretId:'',
secretKey:'',
projectId:''
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
start
开始实时语音识别
start()
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.start();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
stop
停止实时语音识别
stop()
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.stop();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
stopMicrophone
关闭麦克风 (Android 不支持该接口)
stopMicrophone()
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.stopMicrophone();
可用性
iOS系统
可提供的1.0.0及更高版本
addEventListener
添加监听
addEventListener(callback(ret))
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
eventType:'', //字符串类型;事件回调,取值范围如下:
//realTimeRecognizerOnSliceRecognize:每个语音包分片识别结果
//realTimeRecognizerDidFinish:一次识别成功
//realTimeRecognizerDidError:一次识别失败
//realTimeRecognizerDidStartRecordSuccess:开始录音成功
//realTimeRecognizerDidStartRecordError:开始录音失败
//realTimeRecognizerDidStopRecord:结束录音
//realTimeRecognizerDidUpdateVolume:录音音量实时回调用
//realTimeRecognizerOnFlowRecognizeStart:语音流的开始识别
//realTimeRecognizerOnFlowRecognizeEnd:语音流的结束识别
//realTimeRecognizerOnSegmentSuccessRecognize:语音流的识别结果
//realTimeRecognizerOnFlowStart:语音流开始识别
//realTimeRecognizerOnFlowEnd:语音流结束识别
//realTimeRecognizerDidSaveAudioDataAsFile:录音停止后回调一次,再次开始录音会清空上一次保存的文件 (android不支持改参数)
response:{//json对象;语音分片的识别结果,realTimeRecognizerOnSliceRecognize、realTimeRecognizerOnSegmentSuccessRecognize返回
code:0, //数字类型;任务描述代码,为code = 0时标示成功,其他表示为失败
message:'', //字符串类型;code对应的描述信息
voiceId:'', //字符串类型;语音流的识别id
text:'', //字符串类型;当前语音流的识别结果
seq:1, //数字类型;语音包序列号,注意:不是语音流序列号
resultNumber:1, //数字类型;表示后面的 resultList 里面有几段结果,如果是0表示没有结果,遇到中间是静音。如果是1表示 result_list 有一个结果, 在发给服务器分片很大的情况下可能会出现多个结果,正常情况下都是1个结果
resultList:'', //字符串类型;结果
recognizedText:'', //字符串类型;识别到的总文本
requestParameters :{}, //json对象;语音分片请求参数
messageId :'', //字符串类型;本 message 唯一 id
},
result:'', //字符串类型;一次识别出的总文本;realTimeRecognizerDidFinish返回
msg:'', //字符串类型;错误信息;realTimeRecognizerDidError、realTimeRecognizerDidStartRecordError返回
volume:0 //数字类型;声音音量,取值范围(-40-0);realTimeRecognizerDidUpdateVolume返回
voiceId:'', //字符串类型;语音流对应的voiceId,唯一标识;realTimeRecognizerOnFlowRecognizeStart、realTimeRecognizerOnFlowRecognizeEnd、realTimeRecognizerOnFlowStart、realTimeRecognizerOnFlowEnd返回
seq:0, //数字类型;flow的序列号;realTimeRecognizerOnFlowRecognizeStart、realTimeRecognizerOnFlowRecognizeEnd、realTimeRecognizerOnFlowStart、realTimeRecognizerOnFlowEnd返回
audioFilePath:'' //字符串类型;音频文件路径;realTimeRecognizerDidSaveAudioDataAsFile返回 (android不支持改参数)
}
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.addEventListener(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
removeEventListener
移除监听
removeEventListener()
示例代码
var txRealTimeRecognizer = api.require('txRealTimeRecognizer');
txRealTimeRecognizer.removeEventListener();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本