voiceRecognizer

来自于:AC模块工作室立即使用

createUtility addEventListener removeEventListener

语音识别

recognizeConfig recognizeStart recognizeStop recognizeCancel recogizeListening

语音朗读

readConfig startRead startSynthesize pauseRead resumeRead stopRead isReading

语音唤醒

wakeupConfig wakeupStart wakeupStop wakeupCancel wakeupIsListening

音量指示器

addHUD hideHUD showHUD closeHUD

概述

本模块封装了 科大讯飞 的SDK 的语音听写、语音唤醒、语音在线合成功能。

使用本模块之前需要先去科大讯飞开放平台注册开发者账号,然后 创建app 获取 appid ,接着给创建的 app 添加语音听写、在线语音合成、语音唤醒服务。按照科大讯飞官方给的提示,配置唤醒词。然后下载SDK包(需要从SDK包里找到jet文件导入开发工程里,并将jet文件路径通过wakeupConfig接口传给模块)。

【ios平台使用模块的配置】

1,配置 plist 文件

在 iOS 9 下直接进行 HTTP 请求时会收到错误提示。不能直接使用 HTTP 进行请求,需要在 Info.plist 新增一段用于控制 ATS 的配置:

  1. <key>NSAppTransportSecurity</key> <dict>
  2. <key>NSAllowsArbitraryLoads</key> <true/>
  3. </dict>

2,云编译时的配置

云编译时,需要申请访问的权限:麦克风、定位(使用期间)、定位(始终)、通讯录

3,动态库配置 ——- 附加模块制作

由于科大讯飞的 SDK 是动态生成的。所以需要开发者将动态生成的的 SDK 打包成一个附加自定义模块上传 APICloud 平台。制作方法如下:

下载 voiceRecognizerAppendix 模块 zip 包并解压,把 zip 包内 target 目录下的 iflyMSC.framework 文件替换为自己从科大讯飞开放平台动态生成(包括语音听写、在线语音合成、语音唤醒功能的sdk包)的。然后重新压缩为 zip 包文件上传自定义模块,云编译时勾选该模块。

【android平台该模块配置】

动态库配置 ——- 附加模块制作

由于科大讯飞的 SDK 是动态生成的。所以需要开发者将动态生成的的 SDK 打包成一个附加自定义模块上传 APICloud 平台。制作方法如下:

下载 voiceRecognizerAppendix模块zip包并解压,把zip包内source目录下的Msc.jar和Sunflower.jar替换为第二步中sdk目录下xx\Android_awaken_1121_59ba21e0\libs\下的同名文件(如果sdk中没有Sunflower.jar,就不需要添加了);把zip包内target目录下libmsc.so文件替换为第二步中sdk目录下xx\Android_awaken_1121_59ba21e0\libs\armeabi\下的同名文件,然后重新压缩为 zip 包文件上传自定义模块,云编译时勾选该模块。

【tips】 : 相关错误码描述,进入http://www.xfyun.cn/doccenter/faq?go=contitle66查看,更详细的错误说明http://bbs.xfyun.cn/forum.php?mod=viewthread&tid=13056

【注意】:无论是 android 端还是 iOS 端,唤醒功能都是需要jet文件的。jet 文件在 iOS 和 android 端不能共用,可通过 wakeupConfig 接口分别配置。android端没找到唤醒appid.jet文件,会报25000错误码

模块接口

createUtility

创建科大讯飞引擎

createUtility({params}, callback(ret, err))

params

android_appid:

  • 类型:字符串
  • 描述:从科大讯飞开放平台得到的 appid(android端)

ios_appid:

  • 类型:字符串
  • 描述:从科大讯飞开放平台得到的 appid(iOS端)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.createUtility({
  3. android_appid: ‘******’
  4. }, function(ret, err) {
  5. if (ret.status) {
  6. api.alert({ msg: '创建成功'});
  7. } else {
  8. api.alert({ msg: "创建失败" });
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeConfig

语音识别参数配置

recognizeConfig({params}, callback(ret))

params

config:

  • 类型:JSON 对象
  • 描述:识别语音时的参数配置
  • 内部字段:
  1. {
  2. vadbos: '5000', //(可选项)字符串类型;前断点时间(静音时间,即用户多长时间不说话做超时处理),范围是0-10000单位ms;默认:5000
  3. vadeos: '5000', //(可选项)字符串类型;后断点时间(静音时间,即用户多长时间不说话做超时处理),单位ms,范围是0-10000;默认:5000
  4. timeout: '30000', //(可选项)字符串类型;语音输入超时时间,单位ms;默认:30000
  5. netTimeout: '20000', //(可选项)字符串类型;网络连接超时时间,单位ms;默认:20000
  6. rate: '16000', //(可选项)字符串类型;采样率(支持16000,8000);默认:16000
  7. dot: false //(可选项)布尔类型;是否有标点符号;默认:false
  8. language:'zh_cn', // (可选项) 字符串;语言环境;默认值:zh_cn;取值范围:zh_cn(简体中文);en_us(美式英文)
  9. accent:'mandarin' // (可选项) 字符串;语言区域,仅当language为zh_cn时有效;默认值:mandarin;取值范围:cantonese(粤语);henanese(河南话)(android不支持);lmz(四川话)(ios不支持);mandarin(普通话)
  10. }

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.recognizeConfig({
  3. config: {
  4. vadbos: '5000',
  5. vadeos: '5000',
  6. timeout: '30000',
  7. netTimeout: '20000',
  8. rate: '16000',
  9. dot: false
  10. }
  11. }, function(ret) {
  12. if (ret.status) {
  13. api.alert({ msg: '配置成功' });
  14. }
  15. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeStart

开始语音识别,注意:同时只能进行一路会话,这次会话没有结束不能进行下一路会话,否则会报错。若有需要多次回话, 请通过 addEventListener 接口监听 onError ,在该回调事件内请求下一路回话。

recognizeStart({params}, callback(ret))

params

audioFileName:

  • 类型:字符串
  • 描述:(可选项)录制的音频文件保存名字(如123.pcm,一定要加后缀名),结束后文件笛子(绝对路径)会在 addEventListener 监听recognizeResult 回调函数里获取;若不传则不保存

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.recognizeStart(function(ret) {
  3. if (ret.status) {
  4. api.alert({ msg: "开始成功"});
  5. } else {
  6. api.alert({ msg: "开始失败"});
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeStop

停止录音,调用此函数会停止录音,并开始进行语音识别。

recognizeStop()

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.recognizeStop();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recognizeCancel

取消本次会话。

recognizeCancel()

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.recognizeCancel();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recogizeListening

语音识别是否正在录音

recogizeListening(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. listening:true //布尔类型;是否正在录音,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.recogizeListening(function(ret){
  3. if (ret.listening) {
  4. api.alert({ msg: '正在录音'});
  5. } else {
  6. api.alert({ msg: "没有正在录音" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

readConfig

语音朗读配置

readConfig({params}, callback(ret))

params

config:

  • 类型:JSON 对象
  • 描述:识别语音时的参数配置
  • 内部字段:
  1. {
  2. speed: '50', //(可选项)字符串类型;语速,范围是0-100单位ms;默认:50
  3. volume: '50', //(可选项)字符串类型;音量,单位ms,范围是0-100;默认:50
  4. pitch: '50', //(可选项)字符串类型;音调,单位ms,范围:0-100;默认:50
  5. rate: '16000', //(可选项)字符串类型;采样率(支持16000,8000);默认:16000
  6. voice: xiaoyan //(可选项)字符串类型;发音人;默认:xiaoyan
  7. //xiaoyan:小燕-女青、中英、普通话
  8. //xiaoyu:小宇-男青、中英、普通话
  9. //catherine:凯瑟琳-女青、英语
  10. //henry:亨利-男青、英语
  11. //vimary:玛丽-女青、英语
  12. //vixy:小研-女青、中英、普通话
  13. //vixq:小琪-女青、中英、普通话
  14. //vixf:小峰-男青、中英、普通话
  15. //vixl:小梅-女青、中英、粤语
  16. //vixq:小莉-女青、中英、台湾普通话
  17. //vixr:小蓉-女青、中、四川话
  18. //vixyun:小芸-女青、中、东北话
  19. //vixk:小坤-男青、中、河南话
  20. //vixqa:小强-男青、中、湖南话
  21. //vixying:小莹-女青、中、陕西话
  22. //vixx:小新-男童、中、普通话
  23. //vinn:楠楠-女童、中、普通话
  24. //vils:老孙-男老、中、普通话
  25. }

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.readConfig({
  3. config:{
  4. speed: '50',
  5. volume: '50',
  6. pitch: '50',
  7. rate: '16000',
  8. voice: 'xiaoyan'
  9. }
  10. }, function(ret) {
  11. if (ret.status) {
  12. api.alert({ msg: '配置成功' });
  13. }
  14. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startRead

开始合成(播放), 调用此函数进行合成,如果发生错误会回调错误 addEventListener readComplete,合成的文本的最大的字节数为1k

recognizeStart({params})

params

audioFileName:

  • 类型:字符串
  • 描述:(可选项)录制的音频文件保存名字(如123.wav,一定要加后缀名),结束后文件笛子(绝对路径)会在 addEventListener 监听 回调函数里获取;若不传则不保存;(注:android保存的格式有pcm和wav,一般android手机上保存格式为wav, 有些手机可能无法播放pcm)

readString:

  • 类型:字符串
  • 描述:要朗读的字符串,最大的字节数为1k

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.startRead({
  3. audioFileName: '123.pcm',
  4. readString: 'hello 柚子'
  5. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startSynthesize

开始合成(不播放), 调用此函数进行合成,如果发生错误会回调错误 addEventListener readComplete,合成的文本的最大的字节数为1k

startSynthesize({params})

params

audioFileName:

  • 类型:字符串
  • 描述:(可选项)录制的音频文件保存名字(如123.pcm,一定要加后缀名),结束后文件笛子(绝对路径)会在 addEventListener 监听 回调函数里获取;若不传则不保存;(android会默认生成一个文件并保存,默认生成的文件格式为wav)

readString:

  • 类型:字符串
  • 描述:要朗读的字符串,最大的字节数为1k

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.startSynthesize({
  3. audioFileName: '123.pcm',
  4. readString: 'hello 柚子'
  5. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

pauseRead

暂停播放之后,合成不会暂停,仍会继续,如果发生错误则会回调错误addEventListener readComplete

pauseRead()

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.pauseRead();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

resumeRead

恢复播放

resumeRead()

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.resumeRead();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopRead

停止播放

stopRead()

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.stopRead();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

isReading

识别正在语音识别录音

isReading(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. reading:true //布尔类型;是否正在播放语音,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.isReading(function(ret){
  3. if (ret.reading) {
  4. api.alert({ msg: '正在播放'});
  5. } else {
  6. api.alert({ msg: "没有正在播放" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

wakeupConfig

语音唤醒配置

wakeupConfig({params},callback(ret))

params

ios_wordPath:

  • 类型:字符串
  • 描述:从下载的SDK 包内获取的 jet 文件的路径,要求本地路径(fs://、widget://)

android_wordPath:

  • 类型:字符串
  • 描述:从下载的SDK 包内获取的 jet 文件的路径,要求本地路径(widget://)

continue:

  • 类型:布尔
  • 描述:(可选项)设置唤醒服务周期,true:表示唤醒成功后继续录音,并保持唤醒状态;fals:表示唤醒成功后停止录音
  • 默认:true

threshold:

  • 类型:字符串
  • 描述: 唤醒门限值,格式如下默认值,0:表示第一个唤醒词,-20表示对应的门限值。1:表示第二个唤醒词,-20表示对应的门限值
  • 默认:’0:-20;1:-20;’

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.wakeupConfig({
  3. wordPath: 'widget://res/wakeupresource.jet',
  4. continue: true
  5. },function(ret){
  6. if (ret.status) {
  7. api.alert({ msg: '配置成功'});
  8. } else {
  9. api.alert({ msg: "配置失败" });
  10. }
  11. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

wakeupStart

语音唤醒开始

wakeupStart(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.wakeupStart(function(ret){
  3. if (ret.status) {
  4. api.alert({ msg: '开始成功'});
  5. } else {
  6. api.alert({ msg: "开始失败" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

wakeupStop

语音唤醒停止,注意与cancel的区别,紧紧停止服务,并不释放资源

wakeupStop(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.wakeupStop(function(ret){
  3. if (ret.status) {
  4. api.alert({ msg: '停止成功'});
  5. } else {
  6. api.alert({ msg: "停止失败" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

wakeupCancel

语音唤醒取消

wakeupCancel(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.wakeupCancel(function(ret){
  3. if (ret.status) {
  4. api.alert({ msg: '取消成功'});
  5. } else {
  6. api.alert({ msg: "取消失败" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

wakeupIsListening

语音唤醒是否正在录音

wakeupIsListening(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. listening:true //布尔类型;是否正在录音,true|false
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.wakeupIsListening(function(ret){
  3. if (ret.listening) {
  4. api.alert({ msg: '正在录音'});
  5. } else {
  6. api.alert({ msg: "没有正在录音" });
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addEventListener

添加监听

addEventListener({params},callback(ret))

params

name:

  • 类型:字符串
  • 描述:监听的事件的名字
  • 取值范围:

    • beginOfWakeupSpeech:录音开始(语音唤醒)
    • onEndOfWakeupSpeech:录音结束(语音唤醒)
    • onWakeupError:会话错误(语音唤醒)
    • wakeupResult:唤醒结果(语音唤醒)
    • wakeupVolume:唤醒录音的音量返回频率与录音数据返回回调频率一致,范围:0-100(语音唤醒)

    • readComplete:当整个合成结束之后会回调此事件,回调参数内含错误信息(语音朗读)

    • readBegin:语音朗读开始合成(语音朗读)

    • readPause:语音朗读暂停播放(语音朗读)
    • readResumed:语音朗读恢复播放(语音朗读)
    • readCancel:语音朗读正在取消,当调用cancel之后会回调此函数(语音朗读)
    • readBufferProgress:语音朗读音频文件缓冲进度(语音朗读)
    • readProgress:语音朗读恢进度(语音朗读)

    • recognizeResult:语音识别结果(语音识别)

    • beginOfSpeech:录音开始(语音识别)

    • onEndOfSpeech:录音结束(语音识别)
    • onError:会话错误(语音识别)
    • volume:语音识别时录音的音量(改事件实时回调,范围从0-30)返回频率与录音数据返回回调频率一致(语音识别)
    • recognizeCancel:语音识别取消事件,当调用了recogizeCancel 函数之后,会回调此函数,在调用了 recogizeCancel函数和回调 onError 之前会有一个短暂时间,您可以在此函数中实现对这段时间的界面显示。
  • 注意: 在进行语音识别过程中,当调用 recognizeCancel函数时,引擎不会自动结束,需要等到回调此函数,才表示此次会话结束。在没有回调此函数之前如果重新调用了recognizeStart函数则会报错误

realTime:

  • 类型:布尔
  • 描述:(可选项)当 name 为 recognizeResult 时,是否实时返回识别结果
  • 默认:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 描述:所监听事件的回调,当 name 为beginOfWakeupSpeech 、onEndOfWakeupSpeech 、readBegin 、readPause、readResumed、readCancel 、beginOfSpeech、onEndOfSpeech、recognizeCancel 时,只有触发事件,没有回调参数。
  • 内部字段:
  1. {
  2. error: { //JSON 对象;错误信息,当 name 为 onError、onWakeupError时返回的值
  3. code: , //数字类型;错误码
  4. type: , //数字类型;错误类型
  5. msg: //字符串类型;错误信息
  6. }
  7. readComplete:{ //JOSN对象;语音合成完成后的回调
  8. error: { //JSON 对象;错误信息,若语音合成发生错误时返回值
  9. code: , //数字类型;错误码
  10. type: , //数字类型;错误类型
  11. msg: //字符串类型;错误信息
  12. }
  13. audioFilePath: '' //字符串类型;录音文件绝对路径
  14. }
  15. wakeupResult: {} //JOSN对象;唤醒成功后的结果,当 name 为 wakeupResult 时返回的值
  16. recognizeResult:{//JOSN对象;语音识别后的结果,当 name 为 recognizeResult 时返回的值
  17. isLast: true, //字符串类型;是否是最后一次返回语音识别结果,用于实时语音识别时判断识别结束
  18. result: '', //字符串类型;识别结果
  19. audioFilePath: '' //字符串类型;录音文件绝对路径
  20. }
  21. volume: 30 //数字类型;录音音量大小(实时回调),当 name 为 volume、wakeupVolume时返回的值
  22. readProgress: { //JSON对象;朗读进度数据
  23. progress: '', //字符串类型;当前朗读进度
  24. endPos: '', //字符串类型;当前播放文本的起始位置,0-100
  25. beginPos: '' //字符串类型;当前播放文本的结束位置,0-100
  26. }
  27. readBufferProgress: { //JSON对象;朗读音频文件缓冲进度数据
  28. progress: '', //字符串类型;缓冲进度
  29. msg: '' //字符串类型;缓冲的信息
  30. }
  31. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.addEventListener({
  3. name: 'wakeupResult'
  4. },function(ret){
  5. api.alert({ msg: JSON.stringify(ret)});
  6. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeEventListener

移除已添加的监听

removeEventListener({params},callback(ret))

params

name:

  • 类型:字符串
  • 描述:监听的事件的名字
  • 取值范围:
    • beginOfWakeupSpeech:录音开始
    • onEndOfWakeupSpeech:录音结束
    • onWakeupError:会话错误
    • wakeupResult:唤醒结果
    • wakeupVolume:唤醒录音的音量
    • readComplete:当整个合成结束之后会回调此事件
    • readBegin:语音朗读开始合成
    • readPause:语音朗读暂停播放
    • readResumed:语音朗读恢复播放
    • readCancel:语音朗读正在取消
    • readBufferProgress:语音朗读音频文件缓冲进度
    • readProgress:语音朗读恢进度
    • recognizeResult:语音识别结果
    • beginOfSpeech:录音开始
    • onEndOfSpeech:录音结束
    • onError:会话错误
    • volume:语音识别时录音的音量
    • recognizeCancel:语音识别取消事件

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.removeEventListener({
  3. name: 'wakeupResult'
  4. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addHUD

添加音量大小指示器,

当使用语音唤醒、语音识别功能时,会涉及到录音功能。

可通过本接口在界面上添加一个音量指示器,实时显示录音音量大小。

如下图(67*35)所示:

voiceRecognizer - 图1

addHUD({params}, callBack(ret, err))

params

center:

  • 类型:JSON 对象
  • 描述:(可选项)音量指示器锚点坐标
  • 内部字段:
  1. {
  2. x: , //(可选项)数字类型;x坐标;默认:40
  3. y: //(可选项)数字类型;y坐标:默认:20
  4. }

alphas:

  • 类型:数组
  • 描述:(可选项)单条指示器每个指示条的透明度组成的数组。本数组顺序同 orientation 指示的方向。
  • 默认:[1,1,1,1,1,1,1,1]

gradientColors:

  • 类型:数组
  • 描述:(可选项)单条指示器每个指示条的顶部和底部色值配置组成的数组,模块会将两色值渐变处理,渐变色分界点是从上往下30%的位置。本数组顺序同 orientation 指示的方向。
  • 内部字段:
  1. [{
  2. top: '#5f42c8', //(可选项)字符串类型;指示条顶部色值,支持rgb、rgba、#;默认:#5f42c8
  3. bottom: '#ff4e00' //(可选项)字符串类型;指示条底部色值,支持rgb、rgba、#;默认:#ff4e00
  4. }]

orientation:

  • 类型:字符串
  • 描述:(可选项)指示波传递方向
  • 默认值:right_left
  • 取值范围:
    • right_left:从右往左
    • left_right:从左往右

target:

  • 类型:字符串
  • 描述:(可选项)指示器对象
  • 默认值:recognizer
  • 取值范围:
    • recognizer:语音识别的音量指示器
    • wakeup:语音唤醒时的音量指示器

bg:

  • 类型:字符串
  • 描述:(可选项)录音标识的背景色,支持 rgb,rgba,#
  • 默认值:rgba(0,0,0,0)

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)模块是否随所属 window 或 frame 滚动
  • 默认值:true(不随之滚动)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. id:'' //字符串类型;指示器的标识,支持统一页面打开多个模块
  3. }

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.addHUD({
  3. center: {
  4. x: 40,
  5. y: 100
  6. },
  7. gradientColor: {
  8. top: '#5f42c8',
  9. bottom: '#ff4e00'
  10. },
  11. orientation: 'right_left',
  12. target: 'recognizer',
  13. bg: '#AAAAAA',
  14. fixedOn: api.frameName,
  15. fixed: false
  16. }, function(ret) {
  17. var volume = ret.id;
  18. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

showHUD

显示音量大小指示器

showRecordHUD({params})

params

id:

  • 类型:字符串
  • 描述:(可选项)操作的模块对象 id,若不传则显示所有已打开的模块对象

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.showHUD({
  3. id: '1'
  4. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hideHUD

隐藏音量指示器

hideHUD({params})

params

id:

  • 类型:字符串
  • 描述:(可选项)操作的模块对象 id,若不传则隐藏所有已打开的模块对象

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.hideHUD({
  3. id: '1'
  4. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

closeHUD

关闭音量指示器

closeHUD({params})

params

id:

  • 类型:字符串
  • 描述:(可选项)操作的模块对象 id,若不传则关闭所有已打开的模块对象

示例代码

  1. var voiceRecognizer = api.require('voiceRecognizer');
  2. voiceRecognizer.closeHUD({
  3. id: '1'
  4. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本