全部产品

接口说明

更新时间:2021-04-08 10:51:39

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

←返回语音合成产品详情页

功能介绍

  • 支持输出PCM、WAV和MP3编码格式数据。

  • 支持设置语速、语调和音量。

  • 支持设置不同场景及风格的声音。

  • 支持一次性合成300字符以内的文字,其中1个汉字、1个英文字母或1个标点均算作1个字符,超过300个字符的内容会被截断。

  • 仅支持采用UTF-8编码的文本输入。

说明

  • 字级别音素边界接口:语音合成服务在输出音频的同时,可输出每个汉字/英文单词在音频中的时间位置,即时间戳。该时间信息可用于驱动虚拟人口型、做视频配音字幕等。详情请参见语音合成时间戳功能介绍

  • 文学场景相关发音人信息,请参见接口说明

  • 如需使用Android/iOS SDK,请参见移动端接口说明

名称

voice参数值

类型

适用场景

支持语言

支持采样率(Hz)

支持时间戳(字级别音素边界)接口

声音品质

小云

xiaoyun

标准女声

通用场景

中文及中英文混合场景

8K/16K

lite版

小刚

xiaogang

标准男声

通用场景

中文及中英文混合场景

8K/16K

lite版

若兮

ruoxi

温柔女声

通用场景

中文及中英文混合场景

8K/16K/24K

标准版

思琪

siqi

温柔女声

通用场景

中文及中英文混合场景

8K/16K/24K

标准版

思佳

sijia

标准女声

通用场景

中文及中英文混合场景

8K/16K/24K

标准版

思诚

sicheng

标准男声

通用场景

中文及中英文混合场景

8K/16K/24K

标准版

艾琪

aiqi

温柔女声

通用场景

中文及中英文混合场景

8K/16K

标准版

艾佳

aijia

标准女声

通用场景

中文及中英文混合场景

8K/16K

标准版

艾诚

aicheng

标准男声

通用场景

中文及中英文混合场景

8K/16K

标准版

艾达

aida

标准男声

通用场景

中文及中英文混合场景

8K/16K

标准版

宁儿

ninger

标准女声

通用场景

纯中文场景

8K/16K/24K

标准版

瑞琳

ruilin

标准女声

通用场景

纯中文场景

8K/16K/24K

标准版

思悦

siyue

温柔女声

客服场景

中文及中英文混合场景

8K/16K/24K

标准版

艾雅

aiya

严厉女声

客服场景

中文及中英文混合场景

8K/16K

标准版

艾夏

aixia

亲和女声

客服场景

中文及中英文混合场景

8K/16K

标准版

艾美

aimei

甜美女声

客服场景

中文及中英文混合场景

8K/16K

标准版

艾雨

aiyu

自然女声

客服场景

中文及中英文混合场景

8K/16K

标准版

艾悦

aiyue

温柔女声

客服场景

中文及中英文混合场景

8K/16K

标准版

艾婧

aijing

严厉女声

客服场景

中文及中英文混合场景

8K/16K

标准版

小美

xiaomei

甜美女声

客服场景

中文及中英文混合场景

8K/16K/24K

标准版

艾娜

aina

浙普女声

客服场景

纯中文场景

8K/16K

标准版

伊娜

yina

浙普女声

客服场景

纯中文场景

8K/16K/24K

标准版

思婧

sijing

严厉女声

客服场景

纯中文场景

8K/16K/24K

标准版

思彤

sitong

儿童音

童声场景

纯中文场景

8K/16K/24K

标准版

小北

xiaobei

萝莉女声

童声场景

纯中文场景

8K/16K/24K

标准版

艾彤

aitong

儿童音

童声场景

纯中文场景

8K/16K

标准版

艾薇

aiwei

萝莉女声

童声场景

纯中文场景

8K/16K

标准版

艾宝

aibao

萝莉女声

童声场景

纯中文场景

8K/16K

标准版

Harry

harry

英音男声

英文场景

英文场景

8K/16K

标准版

Abby

abby

美音女声

英文场景

英文场景

8K/16K

标准版

Andy

andy

美音男声

英文场景

英文场景

8K/16K

标准版

Eric

eric

英音男声

英文场景

英文场景

8K/16K

标准版

Emily

emily

英音女声

英文场景

英文场景

8K/16K

标准版

Luna

luna

英音女声

英文场景

英文场景

8K/16K

标准版

Luca

luca

英音男声

英文场景

英文场景

8K/16K

标准版

Wendy

wendy

英音女声

英文场景

英文场景

8K/16K/24K

标准版

William

william

英音男声

英文场景

英文场景

8K/16K/24K

标准版

Olivia

olivia

英音女声

英文场景

英文场景

8K/16K/24K

标准版

姗姗

shanshan

粤语女声

方言场景

标准粤文(简体)及粤英文混合场景

8K/16K/24K

标准版

Chuangirl

chuangirl

四川话女声

方言场景

中文及中英文混合场景

8K/16K

标准版

Lydia

lydia

英中双语女声

英文场景

英文及英中文混合场景

8K/16K

标准版

艾硕

aishuo

自然男声

客服场景

中文及中英文混合场景

8K/16K

标准版

青青

qingqing

台湾话女声

方言场景

中文场景

8K/16K

标准版

翠姐

cuijie

东北话女声

方言场景

中文场景

8K/16K

标准版

小泽

xiaoze

湖南重口音男声

方言场景

中文场景

8K/16K

标准版

智香

tomoka

日语女声

多语种场景

日文场景

8K/16K

标准版

智也

tomoya

日语男声

多语种场景

日文场景

8K/16K

标准版

Annie

annie

美语女声

英文场景

英文场景

8K/16K

标准版

佳佳

jiajia

粤语女声

方言场景

标准粤文(简体)及粤英文混合场景

8K/16K

标准版

Indah

indah

印尼语女声

多语种场景

纯印尼语场景

8K/16K

标准版

桃子

taozi

粤语女声

方言场景

支持标准粤文(简体)及粤英文混合场景

8K/16K

标准版

柜姐

guijie

亲切女声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

Stella

stella

知性女声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

Stanley

stanley

沉稳男声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

Kenny

kenny

沉稳男声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

Rosa

rosa

自然女声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

Farah

farah

马来语女声

多语种场景

仅支持纯马来语场景

8K/16K

标准版

马树

mashu

儿童剧男声

通用场景

支持中文及中英文混合场景

8K/16K

标准版

小仙

xiaoxian

亲切女声

直播场景

支持中文及中英文混合场景

8K/16K

标准版

悦儿

yuer

儿童剧女声

通用场景

仅支持纯中文场景

8K/16K

标准版

服务地址

访问类型

说明

URL

外网访问

所有服务器均可使用外网访问URL(SDK中默认设置了外网访问URL)。

wss://nls-gateway.cn-shanghai.aliyuncs.com/ws/v1

上海ECS内网访问

使用阿里云上海ECS(ECS地域为华东2(上海)),可使用内网访问URL。 ECS的经典网络不能访问AnyTunnel,即不能在内网访问语音服务;如果希望使用AnyTunnel,需要创建专有网络在其内部访问。

说明

  • 使用内网访问方式,将不产生ECS实例的公网流量费用。

  • 关于ECS的网络类型请参见网络类型

ws://nls-gateway.cn-shanghai-internal.aliyuncs.com:80/ws/v1

交互流程

语音合成交互流程
说明

  • 上图不包含RESTful API的交互流程,关于RESTful API的交互流程图请参见RESTful API

  • 服务端的响应除了音频流之外,都会在返回信息的header包含本次识别任务的task_id参数,请记录该值。如果出现错误,请将task_id和错误信息提交到工单。

  1. 鉴权

    客户端在与服务端建立WebSocket连接时,使用Token进行鉴权。关于Token获取请参见获取Token

  2. 开始合成

    客户端发起语音合成请求,在请求消息中进行参数设置,各参数通过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。

    [-500, 0, 500] 对应的语速倍速区间为 [0.5, 1.0, 2.0]。

    • -500表示默认语速的0.5倍速。

    • 0表示默认语速的1倍速。

    • 500表示默认语速的2倍速。

    计算方法如下:

    • 0.8倍速(1-1/0.8)/0.002 = -125

    • 1.2倍速(1-1/1.2)/0.001 = 166

    说明

    • 小于1倍速时,使用0.002系数。

    • 大于1倍速时,使用0.001系数。

    实际算法结果取近似值。

    pitch_rate

    Integer

    语调,取值范围:-500~500,默认值:0。

  3. 接收合成数据

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

  4. 结束合成

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

    {
        "header": {
            "message_id": "05450bf69c53413f8d88aed1ee60****",
            "task_id": "640bc797bb684bd6960185651307****",
            "namespace": "SpeechSynthesizer",
            "name": "SynthesisCompleted",
            "status": 20000000,
            "status_message": "GATEWAY|SUCCESS|Success."
        }
    }

    说明

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

服务状态码

服务的每一次响应都包含status字段,即服务状态码,各状态码含义如下。

  • 通用错误:

    错误码

    原因

    解决办法

    40000001

    身份认证失败

    检查使用的令牌是否正确,是否过期。

    40000002

    无效的消息

    检查发送的消息是否符合要求。

    40000010

    免费试用已到期

    请前往控制台开通商用服务。

    403

    令牌过期或无效的参数

    首先检查使用的令牌是否过期,然后检查参数值设置是否合理。

    40000004

    空闲超时

    确认是否长时间(10秒)没有发送数据到服务端。

    40000005

    请求数量过多

    检查是否超过了并发连接数或者每秒钟请求数。如果超过并发数,建议从免费版升级到商用版,或者商用版扩容并发资源。

    40000000

    默认的客户端错误码

    查看错误消息或提交工单。

    50000000

    默认的服务端错误

    如果偶现可以忽略,重复出现请提交工单。

    50000001

    内部调用错误

    如果偶现可以忽略,重复出现请提交工单。

  • 网关错误:

    错误码

    原因

    解决办法

    40010001

    不支持的接口

    使用了不支持的接口,如果使用SDK请提交工单。

    40010002

    不支持的指令

    使用了不支持的指令,如果使用SDK请提交工单。

    40010003

    无效的指令

    指令格式错误,如果使用SDK请提交工单。

    40010004

    客户端提前断开连接

    检查是否在请求正常完成之前关闭了连接。

    40010005

    任务状态错误

    发送了当前任务状态不能处理的指令。

  • 配置错误:

    错误码

    原因

    解决办法

    40020105

    应用不存在

    检查应用appkey是否正确,是否与令牌归属同一个账号。

  • TTS(Text to Speech)错误:

    错误码

    原因

    解决办法

    41020001

    参数错误

    检查是否传递了正确的参数。

    51020001

    TTS服务端错误

    如果偶现可以忽略,重复出现请提交工单。