文档中心
aigc_server 数字人 PaaS 服务
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 数字人 PaaS 服务
  • 服务端 API
  • 流式语音转文本
  • 创建流式语音转文本任务

创建流式语音转文本任务

更新时间:2025-04-15 19:16

描述

调用本接口,通过配置相关参数,创建一个实时流式的语音转文本任务。

接口原型

  • 请求方法:POST
  • 中国大陆正式环境请求地址:https://aigc-api.zegotech.cn/?Action=CreateStreamAsr
  • 传输协议:HTTPS
  • 调用频率限制:10 次/秒

请求参数

以下请求参数列表仅列出了接口请求参数,公共参数列表请参考 调用方式 - 公共请求参数。

参数 类型 是否必选 描述
LanguageType
String
是
语音转文本的语言类型:

  • zh:中文通用。
  • zh-PY:中英粤。
  • zh-TW:中文繁体。
  • zh_edu:中文教育。
  • zh_medical:中文医疗。
  • zh_court:中文法庭。
  • en:英文通用。
  • en_game:英文游戏。
  • en_edu:英文教育。
VoiceId
String
是
音频流识别全局唯一标识,用户自己生成(推荐使用 UUID),最长 128 位。
VoiceFormat
int
否
语音编码方式,可选,默认值为 8。

  • 1:PCM。
  • 8:MP3。
  • 12:WAV。
  • 16:AAC。
NeedVad
int
否
是否开启 vad(人声检测切分功能):

  • 0:关闭 vad(默认值)。
  • 1:开启 vad。

如果语音分片长度超过 60 秒,用户需开启 vad(人声检测切分功能)。

ConvertNumMode
int
否
是否进行阿拉伯数字智能转换(目前支持中文普通话引擎):

  • 0:不转换,直接输出中文数字。
  • 1:根据场景智能转换为阿拉伯数字(默认值)。
  • 3:打开数学相关数字转换。

请求消息体

客户端上传 binary message 到 ZEGO 服务端,内容为音频流二进制数据。

Opus 音频流封装说明

压缩 FrameSize 固定为 640,即一次压缩 640 short,否则解压会失败,传到服务端可以是多帧的拼接组合,每一帧需满足以下格式。每一帧压缩数据封装如下:

OpusHead(4字节) 帧数据长度(2字节) Opus 一帧压缩数据
opus
长度 len。
对应 len 长的 opus decode data。

请求示例

  • 请求 URL:

    https://aigc-api.zegotech.cn/?Action=CreateStreamAsr
    &AppId=1234567890
    &SignatureNonce=15215528852396
    &Timestamp=1234567890
    &Signature=7a2c0f11145fb760d607a07b54825013
    &SignatureVersion=2.0
    &LanguageType=zh
    &VoiceId=a298b578-1a11-48c4-a3f1-a5c7b17db156
    &VoiceFormat=12
    &ConvertNumMode=1
  • 请求消息体:

    在识别过程中,客户端持续上传 binary message 到 ZEGO 服务端,内容为音频流二进制数据。建议每 40 ms 发送 40 ms 时长(即 1:1 实时率)的数据包,对应 PCM 大小为:8K 采样率 640 字节,16K 采样率 1280 字节。

    音频发送速率过快超过 1:1 实时率或者音频数据包之间发送间隔超过 6 秒,可能导致引擎出错,后台将返回错误并主动断开连接。

响应参数

请求成功

此时响应参数的 Content-Type 为 text/event-stream。响应参数为流式返回,格式为 data: {以下响应参数的 json 包}。

参数 类型 描述
TaskId
String
数字人语音转文本任务 ID,查询时使用。
Code
Int
状态码,0 代表正常,非 0 值表示发生错误。
Message
String
操作结果描述,发生错误时显示这个错误发生的具体原因。
VoiceId
String
音频流唯一 ID。
MessageId
String
本识别结果唯一 ID。
Result
Array of Object
最新语音识别结果。
SliceType
Int
识别结果类型:
  • 0:一段话开始识别。
  • 1:一段话识别中,VoiceTextStr 为非稳态结果(该段识别结果还可能变化)。
  • 2:一段话识别结束,VoiceTextStr 为稳态结果(该段识别结果不再变化)。
    根据发送的音频情况,识别过程中可能返回的 SliceType 序列有:
  • 0-1-2:一段话开始识别、识别中(可能有多次 1 返回)、识别结束。
  • 0-2:一段话开始识别、识别结束。
  • 2:直接返回一段话完整的识别结果。
  • Index
    Int
    当前一段话的识别结果在整个音频流中的序号,从 0 开始逐句递增。
    StartTime
    Int
    当前一段话结果在整个音频流中的起始时间。
    EndTime
    Int
    当前一段话结果在整个音频流中的结束时间。
    VoiceTextStr
    String
    当前一段话文本结果,编码为 UTF8。
    WordSize
    Int
    当前一段话的词结果个数。
    Final
    Int
    该字段返回 1 时,表示音频流全部识别结束。

    请求失败

    此时响应参数的 Content-Type 为 application/json,说明如下:

    参数 类型 描述
    Code
    Int
    返回码。
    Message
    String
    操作结果描述。

    响应示例

    • 请求成功的响应示例: 客户端上传数据的过程中,需要同步接收后台返回的实时识别结果,最终返回 Final 值为 1 的消息并断开连接。若识别过程中如果出现错误,后台返回 code 为非 0 值的消息,并断开连接。结果示例如下:
      {
          "TaskId": "ffa13bb6-d39f-442b-a226-314f93ff4dd4",
          "Code": 0,
          "Message": "success",
          "VoiceId": "a298b578-1a11-48c4-a3f1-a5c7b17db156",
          "MessageId": "a298b578-1a11-48c4-a3f1-a5c7b17db156_1",
          "Final": 1,
          "Result": {
              "SliceType": 0,
              "Index": 0,
              "StartTime": 0,
              "EndTime": 0,
              "VoiceTextStr": "",
              "WordSize": 0
          }
      }
    • 请求失败的响应示例:
      {
          "Code": 400000013,
          "Message": "stream tts error"
      }

    返回码

    以下仅列出了常见的接口业务逻辑相关的返回码,完整返回码请参考 全局返回码。

    返回码 说明 处理建议
    0 成功。 -
    100000004 签名过期。 请重新生成签名。
    100000005 签名错误。 请确认生成签名的参数是否正确。
    400000001 输入参数无效。 请根据 Message 提示,调整对应参数的取值。
    400000002 数字人 PaaS 服务权限未开通。 请联系 ZEGO 技术支持开通服务权限。
    400010001 未获得接口调用权限。 请联系 ZEGO 技术支持开通服务权限。
    400004001 参数不合法,具体详情参考 Message。 请确认参数是否正确。
    400004006 账号当前调用并发超出上限。 请重新发起识别。
    400004007 音频解码失败,请检查上传音频数据格式与调用参数一致。 请确认音频数据格式是否正确。
    400004008 客户端超过 15 秒未发送音频数据。 请确认是否有发送数据。
    400004009 客户端连接断开。 请检查客户端是否正确断开。
    400004010 客户端上传未知文本消息。 请确认音频数据格式是否正确。
    400004011 因机器负载过高、网络抖动等导致识别失败,请重新发起新识别。 请重新发起识别。
    400004012 语音转文本(ASR)流参数错误。 请确认参数是否正确。
    400004013 语音转文本(ASR)识别超时。 请检查数据是否正确,内容是否过长。
    本篇目录
    • 免费试用
    • 提交工单
      咨询集成、功能及报价等问题
      电话咨询
      400 1006 604
      咨询客服
      微信扫码,24h在线

      联系我们

    • 文档反馈