API文档

产品定价

Hi,您好,欢迎使用有道智云双向流式API-支持复刻(多音色)接口服务。
本文档主要针对需要集成HTTP API的技术开发工程师,详细描述双向流式API-支持复刻(多音色)相关的技术内容。
如果您有与我们商务合作的需求,可以通过以下方式联系我们:
商务邮箱: AIcloud_Business@corp.youdao.com
如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:
客服QQ:1906538062
智云翻译技术交流QQ 3群: 807539209
智云翻译技术交流QQ 4群: 936752411
联系邮箱: zhiyun@corp.youdao.com
温馨提示:
双向流式API为用户提供文本转语音能力,支持多语种、支持WebSocket协议流式调用。
双向流式API调用地址:
wss://openapi.youdao.com/duplex_stream_tts/stream_tts
参数名 | 类型 | 是否必填 | 描述 | 示例 |
---|---|---|---|---|
appKey | String | 是 | 已申请的应用ID | ID |
salt | String | 是 | UUID | uuid,唯一通用识别码,确保请求唯一性即可 |
curtime | String | 是 | 时间戳(秒) | TimeStamp |
signType | String | 是 | 数字签名类型 | 固定v3 |
sign | String | 是 | 加密数字签名。 | sha256 |
q | String | 是 | 调用类型 | 推荐为curtime |
签名sign生成方法如下: signType=v3; sign=sha256(appKey+q+salt+curtime+应用密钥)。
text
message :json格式参数名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
text | String | 是 | 要合成的文本,长度不能超过2000字符 |
voiceName | String | 是 | 合成使用的音色名 |
userVoice | String | 否 | 指定克隆音色音频文件地址,是否必传参考下方支持的音色 ,要求是可下载的地址,音频格式可以是wav /mp3 ,建议3-7s |
userVoiceText | String | 否 | 指定克隆音色音频的文本,是否必传参考下方支持的音色 |
format | String | 否 | 目标音频格式。支持mp3, wav,不填则默认为mp3 |
sampleRate | Integer | 否 | 目标采样率,可选范围视具体音色而定,不填已模型默认音色为准,具体参考下方支持的音色 |
speed | Double | 否 | 目标语速,范围为[0.5, 2],不填则默认为1 |
volume | Double | 否 | 目标音量,范围为[0.5,10],不填则默认为1 |
pitch | Double | 否 | 目标声调,范围为[0.5,1.5],不填则默认为1 |
lang | String | 否 | 语种,支持中文:zh-CHS 、 英文:en ,默认zh-CHS |
stream | Boolean | 否 | 客户端推送文本的方式是否为流式,默认false 。为 true 表示服务端会持续接收客户端结果,等待时机进行处理并返回。为 false 表示一旦接收到客户端消息就会处理并返回。 |
end | Boolean | 否 | 表示客户端流式推送文本的最后一个包,只有stream=true 才生效,默认true |
{
"text": "再见。",
"voiceName": "ONE_WORD_CHUNK_WAVE",
"lang": "zh-CHS",
"userVoice": "https://speech-custom-tts.nos-jd.163yun.com/test/test.mp3",
"userVoiceText": "你好",
"stream": true,
"end": true
}
{
// 错误码
"code": 0,
// 当前这句话是否处理完成,0-没有完成,1-完成
"finish": 1,
// 每一个回复消息的唯一标识
"messageId": "ade0af68-9003-4440-b4b8-7749f36679a5",
// 错误消息
"msg": "SUCCESS",
// 本次请求的唯一标识,如果是流式输入的场景(stream=true),在收集输入的过程中,requestId都是一样的,用于查问题
"requestId": "2b12ec51-61fe-4279-91a6-f236a83a8065",
// 处理结果
"result": {
// 音频类型
"format": "mp3",
// 采样率
"sampleRate": 16000,
// 处理的输入文本
"text": "再见。",
// 音频base64编码
"voice": "音频base64xxxx"
},
// 整个ws的id
"sessionId": "47e31f68-c641-390e-4fa8-2e5774ef6115"
}
voiceName | 描述 | 是否必传克隆音频 | 采样率 | 默认采样率 |
---|---|---|---|---|
ONE_WORD_CHUNK_WAVE | 音色克隆 | 是 | 8000、16000、24000、44100、48000 | 16000 |
audiobook1.1 | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
audiobook1.0 | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
danyaXuejie | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
shaonvJingpin | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
qnJingYingJingPin | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
mixVoice | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
ningLean | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
podcastGirlPlatform | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
presenterFemale | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
presenterMale | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
suQian | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
wumeiYujie | 固定音色 | 否,不建议传 | 8000、16000、24000、44100、48000 | 48000 |
]
错误码 | 错误描述 |
---|---|
101 | 缺少必填的参数,首先确保必填参数齐全,然后,确认参数书写是否正确。 |
102 | 不支持的语言类型 |
103 | 翻译文本过长 |
104 | 不支持的API类型 |
105 | 不支持的签名类型 |
106 | 不支持的响应类型 |
107 | 不支持的传输加密类型 |
108 | 应用ID无效,注册账号,登录后台创建应用和实例并完成绑定,可获得应用ID和应用密钥等信息 |
109 | batchLog格式不正确 |
110 | 无相关服务的有效实例,应用没有绑定服务。注:某些服务的结果发音需要tts,需要在控制台创建语音合成绑定应用后方能使用。 |
111 | 开发者账号无效 |
112 | 请求服务无效 |
113 | q不能为空 |
114 | 不支持的图片传输方式 |
115 | 语音包异常:不存在或者已删除或者不属于当前devId |
116 | referenceSynthesisId已存在 |
201 | 解密失败,可能为DES,BASE64,URLDecode的错误 |
202 | 签名检验失败 |
203 | 访问IP地址不在可访问IP列表 |
205 | 请求的接口与应用的平台类型不一致,确保接入方式(Android SDK、IOS SDK、API)与创建的应用平台类型一致。 |
206 | 因为时间戳无效导致签名校验失败 |
207 | 重放请求 |
303 | 服务端的其它异常 |
401 | 账户已经欠费停 |
402 | offlinesdk不可用 |
403 | 无权限 |
404 | 资源不存在 |
405 | auth服务不可用 |
411 | 访问频率受限,请稍后访问 |
412 | 超过最大翻译字符数 |
110000 | 签名错误 |
110101 | 缺少合成文本 |
110101 | 缺少音色名 |
110101 | 语种错误 |
110102 | 音色名错误 |
110102 | 合成格式错误 |
110102 | 采样率错误 |
110102 | 语速取值错误 |
110102 | 音量取值错误 |
110102 | 声调取值错误 |
110102 | 情感取值错误 |
110103 | 合成文本长度超出限制 |