全部产品
云市场

接口说明

更新时间:2019-10-12 13:50:30

功能介绍

语音合成提供将输入文本合成为语音二进制数据的功能。

  • 支持输出pcm、wav、mp3编码格式数据;
  • 支持设置语速,语调,音量。
  • 支持设置男声/女声;

声音说明:

名称 voice参数值 类型 适用场景 支持语言 支持采样率(Hz)
小云 Xiaoyun 标准女声 通用场景 支持中文及中英文混合场景 8K/16K
小刚 Xiaogang 标准男声 通用场景 支持中文及中英文混合场景 8K/16K
小梦 Xiaomeng 标准女声 通用场景 支持中文及中英文混合场景 8K/16K
小威 Xiaowei 标准男声 通用场景 支持中文及中英文混合场景 8K/16K
若兮 Ruoxi 温柔女声 通用场景 支持中文及中英文混合场景 8K/16K/24K
思琪 Siqi 温柔女声 通用场景 支持中文及中英文混合场景 8K/16K/24K
思佳 Sijia 标准女声 通用场景 支持中文及中英文混合场景 8K/16K/24K
思诚 Sicheng 标准男声 通用场景 支持中文及中英文混合场景 8K/16K/24K
艾琪 Aiqi 温柔女声 通用场景 支持中文及中英文混合场景 8K/16K/24K
艾佳 Aijia 标准女声 通用场景 支持中文及中英文混合场景 8K/16K/24K
艾诚 Aicheng 标准男声 通用场景 支持中文及中英文混合场景 8K/16K/24K
艾达 Aida 标准男声 通用场景 支持中文及中英文混合场景 8K/16K/24K
宁儿 Ninger 标准女声 通用场景 仅支持纯中文场景 8K/16K/24K
瑞琳 Ruilin 标准女声 通用场景 仅支持纯中文场景 8K/16K/24K
阿美 Amei 甜美女声 客服场景 支持中文及中英文混合场景 8K/16K
小雪 Xiaoxue 温柔女声 客服场景 支持中文及中英文混合场景 8K/16K
思悦 Siyue 温柔女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾雅 Aiya 严厉女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾夏 Aixia 亲和女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾美 Aimei 甜美女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾雨 Aiyu 自然女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾悦 Aiyue 温柔女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
艾婧 Aijing 严厉女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
小美 Xiaomei 甜美女声 客服场景 支持中文及中英文混合场景 8K/16K/24K
伊娜 Yina 浙普女声 客服场景 仅支持纯中文场景 8K/16K/24K
思婧 Sijing 严厉女声 客服场景 仅支持纯中文场景 8K/16K/24K
思彤 Sitong 儿童音 童声场景 仅支持纯中文场景 8K/16K/24K
小北 Xiaobei 萝莉女声 童声场景 仅支持纯中文场景 8K/16K/24K
艾彤 Aitong 儿童音 童声场景 仅支持纯中文场景 8K/16K/24K
艾薇 Aiwei 萝莉女声 童声场景 仅支持纯中文场景 8K/16K/24K
艾宝 Aibao 萝莉女声 童声场景 仅支持纯中文场景 8K/16K/24K
Halen Halen 英音女声 英文场景 仅支持英文场景 8K/16K
Harry Harry 英音男声 英文场景 仅支持英文场景 8K/16K
Eric Eric 英音男声 英文场景 仅支持英文场景 8K/16K/24K
Emily Emily 英音女声 英文场景 仅支持英文场景 8K/16K/24K
Luna Luna 英音女声 英文场景 仅支持英文场景 8K/16K/24K
Luca Luca 英音男声 英文场景 仅支持英文场景 8K/16K/24K
Wendy Wendy 英音女声 英文场景 仅支持英文场景 8K/16K/24K
William William 英音男声 英文场景 仅支持英文场景 8K/16K/24K
Olivia Olivia 英音女声 英文场景 仅支持英文场景 8K/16K/24K
姗姗 Shanshan 粤语女声 方言场景 支持标准粤文(简体)及粤英文混合场景 8K/16K/24K

调用限制

  • 传入文本必须采用UTF-8编码;
  • 传入文本不能超过300个字符。超过300字符的内容会被截断,只合成300字符以内的内容。

服务地址

访问类型 说明 URL
外网访问 所有服务器均可使用外网访问URL(SDK中默认设置了外网访问URL,不需您设置) wss://nls-gateway.cn-shanghai.aliyuncs.com/ws/v1
阿里云上海ECS内网访问 您使用阿里云上海ECS(即ECS地域为华东2(上海)),可使用内网访问URL。
说明:使用内网访问方式,将不产生ECS实例的公网流量费用。
ECS的经典网络不能访问AnyTunnel,即不能在内网访问语音服务;如果希望使用AnyTunnel,需要创建专有网络后在其内部访问。
ws://nls-gateway.cn-shanghai-internal.aliyuncs.com/ws/v1

交互流程

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

tts

说明:服务端的响应除了音频流之外,都会在返回信息的header包含task_id参数,用于表示本次识别任务的ID,请记录下这个值,如果发生错误,请将task_id和错误信息提交到工单。

1. 鉴权

客户端在与服务端建立WebSocket链接的时候,需要使用Token进行鉴权。Token获取请阅读 获取 Token一节

2. synthesis start

客户端发送语音合成请求,其中在请求消息中需要进行参数设置,各参数由SDK中SpeechSynthesizer对象的相关set方法设置,各参数含义如下:

参数 类型 是否必需 说明
appkey String 管控台创建的项目Appkey
text String 待合成文本,文本内容必须采用UTF-8编码,长度不超过300个字符(英文字母之间需要添加空格)
voice String 发音人,默认是xiaoyun
format String 音频编码格式,默认是pcm。支持的格式:pcm、wav、mp3
sample_rate Integer 音频采样率,默认是16000
volume Integer 音量,范围是0~100,默认50
speech_rate Integer 语速,范围是-500~500,默认是0
pitch_rate Integer 语调,范围是-500~500,默认是0

3. synthesize audio data

服务端开始返回合成的语音二进制数据,SDK接收并处理二进制数

4. synthesis complete

语音合成完毕,服务端发送合成完毕事件通知,示例如下:

  1. {
  2. "header": {
  3. "message_id": "05450bf69c53413f8d88aed1ee600e93",
  4. "task_id": "640bc797bb684bd69601856513079df5",
  5. "namespace": "SpeechSynthesizer",
  6. "name": "SynthesisCompleted",
  7. "status": 20000000,
  8. "status_message": "GATEWAY|SUCCESS|Success."
  9. }
  10. }

温馨提示:文档提供的示例Demo中将合成的音频保存在了文件中,如果您需要播放音频且对实时性要求较高,建议使用流式播放,即边接收语音数据边播放,减少延时。

服务状态码

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

通用错误:

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

网关错误:

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

Meta错误:

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

TTS错误:

错误码 原因 解决办法
41020001 参数错误 检查是否传递了正确的参数
51020001 TTS服务端错误 如果偶现可以忽略,重复出现请提交工单