speechRecognizer

来自于:官方立即使用

record stopRecord cancelRecord addRecordHUD showRecordHUD hideRecordHUD read stopRead pauseRead resumeRead

概述

本模块是旧版本语音识别模块,起appid和科大讯飞原生语音SDK都是固定的,推荐开发者使用 voiceRecognizer模块

speechRecognizer模块封装了科大讯飞语音识别的sdk。开发者只需调用此模块即可实现语音识别、语音朗读的相关功能。省去了开发者去科大讯飞官网注册创建app的复杂流程 speechRecognizer - 图1 不能同时添加的模块: seckenModule

record

识别语音返回文字

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

params

vadbos:

  • 类型:数字
  • 描述:(可选项)前断点时间(静音时间,即用户多长时间不说话做超时处理),范围是0-10000单位ms
  • 默认值:5000

vadeos:

  • 类型:数字
  • 描述:(可选项)后断点时间(静音时间,即用户多长时间不说话做超时处理),单位ms,范围是0-10000
  • 默认值:5000

rate:

  • 类型:数字
  • 描述:(可选项)采样率(支持16000,8000)
  • 默认值:16000

asrptt:

  • 类型:数字
  • 描述:(可选项)返回的语句是否有标点符号,取值范围:0-无,1-有
  • 默认值:1

audioPath:

  • 类型:字符串
  • 描述:(可选项)录制的音频文件保存路径(如fs://123.pcm,一定要加后缀名),不支持widget 协议。注意:在 iOS 平台上由于科大讯飞 SDK 限制,只支持 pcm 格式音频保存
  • 备注:若不传则不保存

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status:true //布尔类型;操作成功状态值,true|false
  3. wordStr //字符串类型;识别语音后的文字
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg: //字符串类型;返回的错误信息
  3. }

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.record({
  3. vadbos: 5000,
  4. vadeos: 5000,
  5. rate: 16000,
  6. asrptt: 1,
  7. audioPath: 'fs://speechRecogniser/speech.pcm'
  8. }, function(ret, err) {
  9. if (ret.status) {
  10. api.alert({ msg: ret.wordStr });
  11. } else {
  12. api.alert({ msg: err.msg });
  13. }
  14. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopRecord

停止录音

stopRecord()

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.stopRecord();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelRecord

取消语音识别

cancelRecord()

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.cancelRecord();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addRecordHUD

添加录音音量显示器

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

params

centerX:

  • 类型:数字
  • 描述:(可选项)录音音量标识的圆心坐标
  • 默认值:当前设备屏幕的宽的一半

centerY:

  • 类型:数字
  • 描述:(可选项)录音音量标识的圆心坐标
  • 默认值:100

radius:

  • 类型:数字
  • 描述:(可选项)录音音量标识的圆心半径
  • 默认值:60

transparentR:

  • 类型:数字
  • 描述:(可选项)中间透明区域的半径
  • 默认值:radius的1/2

bg:

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

fixedOn:

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

fixed:

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

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. volume: //数字类型;录音音量大小
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg: //字符串类型;返回错误信息
  3. }

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.addRecordHUD({
  3. centerX: 160,
  4. centerY: 120,
  5. radius: 80,
  6. transparentR: 40,
  7. bg: '#AAAAAA',
  8. fixedOn: api.frameName,
  9. fixed: false
  10. }, function(ret, err) {
  11. var volume = ret.volume;
  12. });

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

showRecordHUD

显示录音音量显示器

showRecordHUD()

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.showRecordHUD();

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

hideRecordHUD

隐藏录音音量显示器

hideRecordHUD()

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.hideRecordHUD();

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

read

用语音读取文字信息,最大的字节数为1k

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

params

readStr:

  • 类型:字符串
  • 描述:要读取的文字信息

speed:

  • 类型:数字
  • 描述:(可选项)朗读的语速,范围是0-100
  • 默认值:60

volume:

  • 类型:数字
  • 描述:(可选项)朗读的声音大小,范围是0-100
  • 默认值:60

voice:

  • 类型:字符串
  • 描述:(可选项)朗读人(兼容旧版本:0-xiaoyan;1-xiaoyu;)
  • 默认值:xiaoyan
  • 取值范围:
    • xiaoyan:小燕
    • xiaoyu:小宇
    • catherine:凯瑟琳
    • henry:亨利
    • vimary:玛丽
    • vixy:小研
    • vixq:小琪
    • vixf:小峰
    • vixl:小梅
    • vixq:小莉
    • vixr:小蓉(四川话)
    • vixyun:小芸
    • vixk:小坤
    • vixqa:小强
    • vixying:小莹
    • vixx:小新
    • vinn:楠楠
    • vils:老孙

rate:

  • 类型:数字
  • 描述:(可选项)采样率(支持16000,8000)
  • 默认值:16000

audioPath:

  • 类型:字符串
  • 描述:(可选项)朗读的音频保存路径(如fs://123.pcm,一定要加后缀名),不支持widget 协议。注意:在 iOS 平台上由于科大讯飞 SDK 限制,只支持 pcm 格式音频保存
  • 备注:若不传则不保存

callback(ret, err)

ret:

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

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg: //字符串类型;返回错误信息
  3. }

示例代码

  1. var speechRecognizer = api.require('speechRecognizer');
  2. speechRecognizer.read({
  3. readStr: 'APICloud平台',
  4. speed: 60,
  5. volume: 60,
  6. voice: 1,
  7. rate: 16000,
  8. audioPath: 'fs://speechRecogniser/read.mp3'
  9. }, function(ret, err) {
  10. if (ret.status) {
  11. ret.speakProgress
  12. } else {
  13. api.alert({ msg: err.msg });
  14. }
  15. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopRead

停止朗读

stopReead()

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

pauseRead

暂停朗读(用 resumeRead 接口恢复朗读)

pauseRead()

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

resumeRead

恢复朗读

resumeRead()

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本