雙向流式API-支持復(fù)刻(多音色)
說(shuō)明
Hi,您好,歡迎使用有道智云雙向流式API-支持復(fù)刻(多音色)接口服務(wù)。
本文檔主要針對(duì)需要集成HTTP API的技術(shù)開(kāi)發(fā)工程師,詳細(xì)描述雙向流式API-支持復(fù)刻(多音色)相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過(guò)以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問(wèn),可以通過(guò)以下幾種方式聯(lián)系我們:
客服QQ:1906538062
智云翻譯技術(shù)交流QQ 3群: 807539209
智云翻譯技術(shù)交流QQ 4群: 936752411
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
- 本文檔主要針對(duì)開(kāi)發(fā)人員,接入測(cè)試前需要獲取應(yīng)用ID和應(yīng)用密鑰;如果您還沒(méi)有,請(qǐng)按照 新手指南 獲取。
- 平臺(tái)向每個(gè)賬戶(hù)贈(zèng)送50元的體驗(yàn)金,供用戶(hù)集成前測(cè)試所用。
接口說(shuō)明
雙向流式API為用戶(hù)提供文本轉(zhuǎn)語(yǔ)音能力,支持多語(yǔ)種、支持WebSocket協(xié)議流式調(diào)用。
接口調(diào)用參數(shù)
雙向流式API調(diào)用地址:
wss://openapi.youdao.com/duplex_stream_tts/stream_tts
接口調(diào)用
認(rèn)證階段
參數(shù)名 |
類(lèi)型 |
是否必填 |
描述 |
示例 |
appKey |
String |
是 |
已申請(qǐng)的應(yīng)用ID |
ID |
salt |
String |
是 |
UUID |
uuid,唯一通用識(shí)別碼,確保請(qǐng)求唯一性即可 |
curtime |
String |
是 |
時(shí)間戳(秒) |
TimeStamp |
signType |
String |
是 |
數(shù)字簽名類(lèi)型 |
固定v3 |
sign |
String |
是 |
加密數(shù)字簽名。 |
sha256 |
q |
String |
是 |
調(diào)用類(lèi)型 |
推薦為curtime |
簽名sign生成方法如下: signType=v3; sign=sha256(appKey+q+salt+curtime+應(yīng)用密鑰)。
通信階段
- 發(fā)送
text
message :json格式
參數(shù)名 |
類(lèi)型 |
是否必填 |
描述 |
text |
String |
是 |
要合成的文本,長(zhǎng)度不能超過(guò)2000字符 |
voiceName |
String |
是 |
合成使用的音色名 |
userVoice |
String |
否 |
指定克隆音色音頻文件地址,是否必傳參考下方支持的音色 ,要求是可下載的地址,音頻格式可以是wav /mp3 ,建議3-7s |
userVoiceText |
String |
否 |
指定克隆音色音頻的文本,是否必傳參考下方支持的音色 |
format |
String |
否 |
目標(biāo)音頻格式。支持mp3, wav,不填則默認(rèn)為mp3 |
sampleRate |
Integer |
否 |
目標(biāo)采樣率,可選范圍視具體音色而定,不填已模型默認(rèn)音色為準(zhǔn),具體參考下方支持的音色 |
speed |
Double |
否 |
目標(biāo)語(yǔ)速,范圍為[0.5, 2],不填則默認(rèn)為1 |
volume |
Double |
否 |
目標(biāo)音量,范圍為[0.5,10],不填則默認(rèn)為1 |
pitch |
Double |
否 |
目標(biāo)聲調(diào),范圍為[0.5,1.5],不填則默認(rèn)為1 |
lang |
String |
否 |
語(yǔ)種,支持中文:zh-CHS 、 英文:en ,默認(rèn)zh-CHS |
stream |
Boolean |
否 |
客戶(hù)端推送文本的方式是否為流式,默認(rèn)false 。 為true 表示服務(wù)端會(huì)持續(xù)接收客戶(hù)端結(jié)果,等待時(shí)機(jī)進(jìn)行處理并返回。 為false 表示一旦接收到客戶(hù)端消息就會(huì)處理并返回。 |
end |
Boolean |
否 |
表示客戶(hù)端流式推送文本的最后一個(gè)包,只有stream=true 才生效,默認(rèn)true |
示例
{
"text": "再見(jiàn)。",
"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
}
返回結(jié)果
{
// 錯(cuò)誤碼
"code": 0,
// 當(dāng)前這句話(huà)是否處理完成,0-沒(méi)有完成,1-完成
"finish": 1,
// 每一個(gè)回復(fù)消息的唯一標(biāo)識(shí)
"messageId": "ade0af68-9003-4440-b4b8-7749f36679a5",
// 錯(cuò)誤消息
"msg": "SUCCESS",
// 本次請(qǐng)求的唯一標(biāo)識(shí),如果是流式輸入的場(chǎng)景(stream=true),在收集輸入的過(guò)程中,requestId都是一樣的,用于查問(wèn)題
"requestId": "2b12ec51-61fe-4279-91a6-f236a83a8065",
// 處理結(jié)果
"result": {
// 音頻類(lèi)型
"format": "mp3",
// 采樣率
"sampleRate": 16000,
// 處理的輸入文本
"text": "再見(jiàn)。",
// 音頻base64編碼
"voice": "音頻base64xxxx"
},
// 整個(gè)ws的id
"sessionId": "47e31f68-c641-390e-4fa8-2e5774ef6115"
}
支持的音色
voiceName |
描述 |
是否必傳克隆音頻 |
采樣率 |
默認(rèn)采樣率 |
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 |
交互形式
]
錯(cuò)誤代碼列表
錯(cuò)誤碼 |
錯(cuò)誤描述 |
101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書(shū)寫(xiě)是否正確。 |
102 |
不支持的語(yǔ)言類(lèi)型 |
103 |
翻譯文本過(guò)長(zhǎng) |
104 |
不支持的API類(lèi)型 |
105 |
不支持的簽名類(lèi)型 |
106 |
不支持的響應(yīng)類(lèi)型 |
107 |
不支持的傳輸加密類(lèi)型 |
108 |
應(yīng)用ID無(wú)效,注冊(cè)賬號(hào),登錄后臺(tái)創(chuàng)建應(yīng)用和實(shí)例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 |
batchLog格式不正確 |
110 |
無(wú)相關(guān)服務(wù)的有效實(shí)例,應(yīng)用沒(méi)有綁定服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts,需要在控制臺(tái)創(chuàng)建語(yǔ)音合成綁定應(yīng)用后方能使用。 |
111 |
開(kāi)發(fā)者賬號(hào)無(wú)效 |
112 |
請(qǐng)求服務(wù)無(wú)效 |
113 |
q不能為空 |
114 |
不支持的圖片傳輸方式 |
115 |
語(yǔ)音包異常:不存在或者已刪除或者不屬于當(dāng)前devId |
116 |
referenceSynthesisId已存在 |
201 |
解密失敗,可能為DES,BASE64,URLDecode的錯(cuò)誤 |
202 |
簽名檢驗(yàn)失敗 |
203 |
訪問(wèn)IP地址不在可訪問(wèn)IP列表 |
205 |
請(qǐng)求的接口與應(yīng)用的平臺(tái)類(lèi)型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺(tái)類(lèi)型一致。 |
206 |
因?yàn)闀r(shí)間戳無(wú)效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請(qǐng)求 |
303 |
服務(wù)端的其它異常 |
401 |
賬戶(hù)已經(jīng)欠費(fèi)停 |
402 |
offlinesdk不可用 |
403 |
無(wú)權(quán)限 |
404 |
資源不存在 |
405 |
auth服務(wù)不可用 |
411 |
訪問(wèn)頻率受限,請(qǐng)稍后訪問(wèn) |
412 |
超過(guò)最大翻譯字符數(shù) |
110000 |
簽名錯(cuò)誤 |
110101 |
缺少合成文本 |
110101 |
缺少音色名 |
110101 |
語(yǔ)種錯(cuò)誤 |
110102 |
音色名錯(cuò)誤 |
110102 |
合成格式錯(cuò)誤 |
110102 |
采樣率錯(cuò)誤 |
110102 |
語(yǔ)速取值錯(cuò)誤 |
110102 |
音量取值錯(cuò)誤 |
110102 |
聲調(diào)取值錯(cuò)誤 |
110102 |
情感取值錯(cuò)誤 |
110103 |
合成文本長(zhǎng)度超出限制 |