全部产品

接口说明

更新时间:2021-01-29 16:29:20

长文本语音合成功能提供了将超长文本(如千字或者万字)合成为语音二进制数据的功能。

功能介绍

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

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

  • 支持设置男声、女声。

  • 支持通过异步方式获取合成结果。

  • 长文本语音合成服务相比语音合成服务有其独特优势:

    • 支持更长文字输入:一次性合成最高10万字。

    • 合成速度快:每合成5万字最快仅需10分钟。

    • 循环使用:合成文件支持应用端缓存,可循环使用。

    • 专属声音:按场景打造专属精品声音,完美贴合阅读小说、文章等场景。

说明

使用长文本语音合成功能,需要将SDK更新至最新版本。

声音类型

名称

voice参数值

类型

适用场景

支持语言

支持采样率(Hz)

支持字级别音素边界接口

小云

Xiaoyun

标准女声

通用场景

中文及中英文混合场景

8K/16K

小刚

Xiaogang

标准男声

通用场景

中文及中英文混合场景

8K/16K

若兮

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

艾媛

Aiyuan

知心姐姐

文学场景

中文及中英文混合场景

8K/16K

艾颖

Aiying

软萌童声

文学场景

中文及中英文混合场景

8K/16K

艾祥

Aixiang

磁性男声

文学场景

中文及中英文混合场景

8K/16K

艾墨

Aimo

情感男声

文学场景

中文及中英文混合场景

8K/16K

艾晔

Aiye

青年男声

文学场景

中文及中英文混合场景

8K/16K

艾婷

Aiting

电台女声

文学场景

中文及中英文混合场景

8K/16K

艾凡

Aifan

情感女声

文学场景

中文及中英文混合场景

8K/16K

Lydia

Lydia

英中双语女声

英文场景

英文及英中文混合场景

8K/16K

小玥

chuangirl

四川话女声

方言场景

中文及中英文混合场景

8K/16K

艾硕

Aishuo

自然男声

客服场景

中文及中英文混合场景

8K/16K

艾德

Aide

新闻男声

文学场景

中文及中英文混合场景

8K/16K

青青

Qingqing

台湾话女声

方言场景

纯中文场景

8K/16K

翠姐

Cuijie

东北话女声

方言场景

纯中文场景

8K/16K

小泽

Xiaoze

湖南重口音男声

方言场景

纯中文场景

8K/16K

艾楠

Ainan

广告男声

文学场景

中文及中英文混合场景

8K/16K

艾浩

Aihao

资讯男声

文学场景

中文及中英文混合场景

8K/16K

艾茗

Aiming

诙谐男声

文学场景

中文及中英文混合场景

8K/16K

艾笑

Aixiao

资讯女声

文学场景

中文及中英文混合场景

8K/16K

艾厨

Aichu

舌尖男声

文学场景

中文及中英文混合场景

8K/16K

艾倩

Aiqian

资讯女声

文学场景

中文及中英文混合场景

8K/16K

智香

Tomoka

日语女声

多语种场景

纯日文场景

8K/16K

智也

Tomoya

日语男声

多语种场景

纯日文场景

8K/16K

Annie

Annie

美语女声

英文场景

纯英文场景

8K/16K

艾树

Aishu

资讯男声

文学场景

中文及中英文混合场景

8K/16K

艾茹

Airu

新闻女声

文学场景

中文及中英文混合场景

8K/16K

佳佳

Jiajia

粤语女声

方言场景

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

8K/16K

Indah

Indah

印尼语女声

多语种场景

纯印尼语场景

8K/16K

调用说明

  • 传入文本必须采用UTF-8编码。

  • 长文本语音合成和语音合成在很多地方都是相似的,可进行对比。

服务地址

访问类型

说明

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编码(英文单词之间需要添加空格)。

    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":{
            "namespace":"SpeechLongSynthesizer",
            "name":"SynthesisCompleted",
            "status":20000000,
            "message_id":"396c80b3abf84082a48cb9e5c424****",
            "task_id":"f5805be640364cdcafc8da63e512****",
            "status_text":"Gateway:SUCCESS:Success."
        }
    }

服务状态码

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

  • 通用错误

    错误码

    原因

    解决办法

    40000001

    身份认证失败

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

    40000002

    无效的消息

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

    403

    令牌过期或无效的参数

    1. 检查使用的令牌是否过期。

    2. 检查参数值设置是否合理。

    40000004

    空闲超时

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

    40000005

    请求数量过多

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

    40000000

    默认的客户端错误码

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

    50000000

    默认的服务端错误

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

    50000001

    内部调用错误

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

  • 网关错误

    错误码

    原因

    解决办法

    40010001

    不支持的接口

    检查是否使用了未支持的接口,如果没有,请提交工单。

    40010002

    不支持的指令

    检查是否使用了未支持的指令,如果没有,请提交工单。

    40010003

    无效的指令

    检查指令格式是否错误,如果没有,请提交工单。

    40010004

    客户端提前断开连接

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

    40010005

    任务状态错误

    检查是否发送当前任务状态不能处理的指令。

  • 配置错误

    错误码

    原因

    解决办法

    40020105

    应用不存在

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

  • TTS(Text to Speech)错误

    错误码

    原因

    解决办法

    41020001

    参数错误

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

    51020001

    TTS服务端错误

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