接口说明

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

功能介绍

NUI SDK提供更小的工具包和更完善的状态管理。为满足不同用户需求,NUI SDK既能够提供全链路的语音能力,同时可做原子能力SDK进行使用,并保持接口的统一。

语音合成功能支持如下能力:

  • 支持输出pcm、mp3编码格式数据。

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

  • 支持设置声音类型,如下表所示。

    名称

    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

    四川话女声

    方言场景

    中文及中英文混合场景

    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

    标准版

    猫小美

    maoxiaomei

    活力女声

    直播场景

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

    8K/16K

    标准版

    艾飞

    aifei

    激昂解说

    直播场景

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

    8K/16K

    标准版

    亚群

    yaqun

    卖场广播

    直播场景

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

    8K/16K

    标准版

    巧薇

    qiaowei

    卖场广播

    直播场景

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

    8K/16K

    标准版

    大虎

    dahu

    东北话男声

    方言场景

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

    8K/16K

    标准版

    ava

    ava

    美语女声

    英文场景

    仅支持纯英文场景

    8K/16K

    标准版

    艾伦

    ailun

    悬疑解说

    直播场景

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

    8K/16K

    标准版

    杰力豆

    jielidou

    治愈童声

    童声场景

    仅支持纯中文场景

    8K/16K

    标准版

    老铁

    laotie

    东北老铁

    直播场景

    仅支持纯中文场景

    8K/16K

    标准版

    老妹

    laomei

    吆喝女声

    直播场景

    仅支持纯中文场景

    8K/16K

    标准版

    艾侃

    aikan

    天津话男声

    方言场景

    仅支持纯中文场景

    8K/16K

    标准版

限制条件

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

  • 传入的文本不能超过300个字符,超过300个字符的内容会被截断。

服务地址

访问类型

说明

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

交互流程

语音合成交互流程
说明

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

  1. 鉴权

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

    初始化参数如下:

    参数

    类型

    是否必选

    说明

    workspace

    String

    工作目录路径,SDK从该路径读取配置文件。

    app_key

    String

    管控台创建项目的appkey。

    token

    String

    请确保该token可以使用并在有效期内。 Token可以在初始化时设置,也可通过参数设置进行更新。

    device_id

    String

    设备标识,能够唯一表示一台设备(如Mac地址/SN/UniquePsuedoID)。

  2. 开始合成

    客户端发起语音合成请求,在请求消息中进行参数设置,各参数通过SDK中setparamTts方法设置,含义如下:

    参数

    类型

    是否必选

    说明

    appkey

    String

    管控台创建的项目appkey。

    token

    String

    如果需要更新,则进行设置。

    direct_host

    String

    支持客户端自行DNS解析后传入IP进行访问。

    font_name

    String

    发音人,默认是xiaoyun。

    encode_type

    String

    音频编码格式,默认值:pcm。支持格式:pcm、wav、mp3。

    sample_rate

    String

    音频采样率,默认值:16000。

    volume

    String

    音量,取值范围:0~2,默认值:1.0。

    speed_level

    String

    语速,取值范围:0~2,默认值:1.0,值越大语速越快。

    pitch_level

    String

    语调,取值范围:-500~500,默认值:0,值越大声音越尖锐。

    enable_subtitle

    String

    字级别音素边界功能开关,该参数只对支持字级别音素边界接口的发音人有效。“1”表示打开,“0”表示关闭。

  3. 接收数据合成

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

  4. 结束合成

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

错误码

如果语音合成发生错误,SDK将上报TTS_EVENT_ERROR事件,并提供错误信息,如下表所示。

错误码

错误消息

描述

0

TTS_SUCCESS

成功。

140000

TTS_CREATE_FAILED

引擎初始化失败。

140001

TTS_ENGINE_INVALID

引擎未初始化。

140002

TTS_TEXT_ERROR

文本非法,如文本为空。

140003

TTS_MALLOC_FAILED

内存申请失败。

140004

TTS_TEXT_QUEUE_FULL

任务队列已满。

140005

TTS_ASSETPATH_INVALID

资源路径为空。

140006

TTS_HANLDE_INVALID

处理线程不存在。

140007

TTS_CREATE_HANLDE_FAILED

创建处理线程失败。

140008

TTS_AUTH_FAILED

鉴权失败,无法继续使用SDK。

140009

TTS_TEXT_QUEUE_EMPTY

合成队列已空。

140010

TTS_MODE_INVALID

合成模式无效。

140012

TTS_OPEN_FILE_FAILED

打开文件失败。

140013

TTS_STATE_INVALID

SDK的状态机校验失败。

140014

TTS_SYNTHESIZER_INIT_ERROR

合成器初始化失败。

140015

TTS_SYNTHESIZER_RELEASE_ERROR

合成器释放失败。

140016

TTS_SYNTHESIZER_FAILED

合成失败。

140017

TTS_WAIT_TIMEOUT

超时退出。

140018

TTS_CLOSED

没有编译语音合成部分代码。

140100

TTS_PARAM_INVALID

参数无效。

140101

TTS_PARAM_VALUE_INVALID

参数值无效。

140102

TTS_CFG_OPEN_FAILED

配置文件打开失败。

140103

TTS_CFG_WRONG_FORMAT

配置文件格式错误。

140150

TTS_LOG_OPEN_FAILED

创建日志文件失败。

140200

TTS_AM_CREATE_FAILED

播放器创建失败。

140201

TTS_AM_OPEN_FAILED

播放器打开失败。

140210

TTS_DECODER_INIT_FAILED

音频解码器初始化失败。

140211

TTS_DECODER_MALLOC_FAILED

音频解码器申请内存失败。

140212

TTS_DECODER_INPUT_TOO_MANY

单次输入数据过多,将被丢弃。

140213

TTS_DECODER_OUTPUT_TOO_MANY

输出数据过多,超过缓存,会丢失。

140220

TTS_AP_INIT_FAILED

音频处理单元打开失败。

140221

TTS_AP_START_FAILED

音频处理单元启动出错。

140222

TTS_AP_MALLOC_FAILED

音频处理单元内存申请失败。

140230

TTS_BGM_START_FAILED

背景音乐开始失败。

140231

TTS_BGM_DECODE_INVALID

解码器初始化失败。

140232

TTS_BGM_ADD_FAILED

本句加背景音乐失败。

140233

TTS_BGM_MALLOC_FAILED

内存申请失败。

140234

TTS_BGM_OPEN_FILE_FAILED

背景音乐文件打开失败。

140235

TTS_BGM_FILE_FORMAT_ERROR

背景音乐格式错误。

140300

TTS_CACHE_INIT_FAILED

初始化cache失败。

140301

TTS_CACHE_MGR_INVALID

cache管理器未初始化。

140303

TTS_CACHE_CALLBACK_INVALID

回调函数未初始化。

140304

TTS_CACHE_START_READ_FAILED

开始打开cache文件失败。

140305

TTS_CACHE_READ_FAILED

读取cache文件数据失败。

140306

TTS_CACHE_MALLOC_FAILED

cache模块内存申请失败。

140307

TTS_CACHE_DELETE_FAILED

删除失败。

140308

TTS_CACHE_PATH_INVALID

无法创建缓存路径。

140309

TTS_CACHE_LIST_CREATE_FAILED

cache列表创建失败。

140310

TTS_CACHE_FAILED

缓存失败。

140311

TTS_CACHE_TOO_MANY

缓存过多。

140312

TTS_CACHE_PARAM_INVALID

缓存功能的参数设置错误。

140313

TTS_CACHE_RECORDING_OPEN_FAILED

打开本地文件错误。

140352

TTS_FONT_INITLIST_INVALID

fontlist管理器未初始化。

140353

TTS_FONT_CMD_INVALID

命令格式错误。

140354

TTS_FONT_RESPONSE_ERROR

服务端返回格式错误。

140355

TTS_FONT_RESPONSELIST_ERROR

fontlist请求服务端返回格式错误。

140356

TTS_FONT_GET_FONTLIST_FAILED

获取fontlist失败。

140357

TTS_FONT_REQUEST_CMD_ERROR

创建请求指令错误。

140358

TTS_FONT_LOCALMSG_ERROR

本地list文件解析失败。

140360

TTS_FONT_CLOUDMSG_ERROR

云端list解析失败。

140900

TTS_LOCAL_CRE_ENGINE_ERROR

本地引擎初始化失败。

140901

TTS_LOCAL_ENGINE_INVALID

本地引擎未初始化。

140902

TTS_LOCAL_ASSET_ERROR

本地资源校验失败。

140903

TTS_LOCAL_CRE_TASK_ERROR

创建本地task失败。

140904

TTS_LOCAL_TASK_INVALID

task无效。

140905

TTS_LOCAL_START_FAILED

本地开始合成失败。

141000

TTS_CLOUD_CREATE_FAILED

云端引擎初始化失败。

141001

TTS_CLOUD_ENGINE_INVALID

云端引擎未初始化。

141002

TTS_CLOUD_TASK_FAILED

创建云端task失败。

141003

TTS_CLOUD_TASK_INVALID

task无效。

141004

TTS_CLOUD_START_FAILED

云端服务请求失败。

141005

TTS_CLOUD_CANCEL_FAILED

取消任务失败。

141006

TTS_CLOUD_NETWORK_BROKEN

网络较差。

144001

TTS_CLOUD_AUTH_FAILED

身份认证失败。

144002

TTS_CLOUD_INVALID_MESSAGE

消息无效。

144003

TTS_CLOUD_INVALID_TOKEN

令牌过期或无效。

144004

TTS_CLOUD_WAIT_TIMEOUT

空闲超时。

144005

TTS_CLOUD_EXCEED_CONCURRENCY

请求数量过多。

144100

TTS_CLOUD_INVALID_INTERFACE

接口不支持。

144101

TTS_CLOUD_UNSUPPORTED_ORDER

指令不支持。

144102

TTS_CLOUD_INVALID_ORDER

指令无效。

144103

TTS_CLOUD_CLIENT_DISCONNECT

客户端提前断开连接。

144200

TTS_CLOUD_INVALID_APPKEY

应用不存在。

144300

TTS_CLOUD_INVALID_PARAM

访问云端服务参数错误。

144400

TTS_CLOUD_SERVER_ERROR

语音合成服务端出错。