全部产品
阿里云办公

简介

更新时间:2018-10-16 13:51:21

功能介绍

对一分钟内的短语音进行识别,适用于对话聊天,控制口令等较短的语音识别场景。

  • 支持音频编码格式:PCM、OPUS、OPU(阿里集团内部编码格式);
  • 支持音频采样率:8000Hz、16000Hz;
  • 支持对返回结果进行设置:是否返回中间识别结果,是否在后处理中添加标点,是否将中文数字转为阿拉伯数字输出。
  • 支持方言识别,可在控制台编辑项目进行模型配置

调用限制

  • 传入的语音数据不能超过60s

交互流程

说明:交互流程图为Java SDK、C++ SDK、iOS SDK、Android SDK的交互流程,不包含RESTful API的交互流程,RESTful API的交互流程图请直接阅读RESTful API 2.0一节。short-asr

1.start and confirm

客户端发起请求,服务端确认请求有效。其中在请求消息中需要进行参数设置,各参数由SDK中SpeechRecognizer对象的相关set方法设置,各参数含义如下:

Parameter Type Description
format String 音频编码格式,可选,默认是PCM。支持的格式:PCM、OPUS、OPU(阿里集团内部编码格式)
sample_rate Integer 音频采样率,可选,默认是16000Hz,请根据音频的采样率在管控台对应项目中配置支持该采样率及场景的模型
enable_intermediate_result Boolean 是否返回中间识别结果,可选,默认是False
enable_punctuation_prediction Boolean 是否在后处理中添加标点,可选,默认是False
enable_inverse_text_normalization Boolean 是否在后处理中执行ITN,可选,设置为true时,中文数字将转为阿拉伯数字输出,默认是False

2.send and recognize

循环送语音数据,持续接收识别结果:

  • 若enable_intermediate_result设置为 true, 服务端会持续多次返回RecognitionResultChanged消息,即中间识别结果,如:
    1. 北京
    2. 北京的天气
    3. 北京的天气怎么样
  • 若enable_intermediate_result设置为 false, 此步骤服务端不返回任何消息。

3.stop and complete

通知服务端语音数据发送结束,服务端返回最终识别结果:

  1. {
  2. "header": {
  3. "namespace": "SpeechRecognizer",
  4. "name": "RecognitionCompleted",
  5. "status": 20000000,
  6. "message_id": "6f521d42193d4321b91d7298489ff534",
  7. "task_id": "282adb044cee496da444ee1896d68dfe",
  8. "status_text": "SUCCESS"
  9. },
  10. "payload": {
  11. "result": "北京的天气怎么样"
  12. }
  13. }
Parameter Type Description
result String 一句话识别结果
status int 服务状态码

服务状态码

在服务的每一次响应中,都包含status字段,即服务状态码,状态码各种取值含义如下:

通用错误:

错误码 原因 解决办法
40000001 身份认证失败 检查使用的令牌是否正确,是否过期
40000002 无效的消息 检查发送的消息是否符合要求
40000003 令牌过期或无效的参数 首先检查使用的令牌是否过期,然后检查参数值设置是否合理
40000004 空闲超时 确认是否长时间没有发送数据掉服务端
40000005 请求数量过多 检查是否超过了并发连接数或者每秒钟请求数
40000000 默认的客户端错误码 查看错误消息或提交工单
50000000 默认的服务端错误 如果偶现可以忽略,重复出现请提交工单
50000001 内部GRPC调用错误 如果偶现可以忽略,重复出现请提交工单

网关错误:

错误码 原因 解决办法
40010001 不支持的接口 使用了不支持的接口,如果使用SDK请提交工单
40010002 不支持的指令 使用了不支持的指令,如果使用SDK请提交工单
40010003 无效的指令 指令格式错误,如果使用SDK请提交工单
40010004 客户端提前断开连接 检查是否在请求正常完成之前关闭了连接
40010005 任务状态错误 发送了当前任务状态不能处理的指令

Meta错误:

错误码 原因 解决办法
40020105 应用不存在 检查应用apkey是否正确,是否与令牌归属同一个账号