TTS API簡介
概念解釋
語音合成:將文字轉(zhuǎn)語音的服務(wù),可根據(jù)設(shè)置參數(shù)設(shè)置合成多國多音色語音,發(fā)音自然流暢。
說明
Hi,您好,歡迎使用有道智云語音合成API接口服務(wù)。有道智云TTS API接口提供有道的文字轉(zhuǎn)語音服務(wù),您可以請求一段您想轉(zhuǎn)換成語音的文字,就可以得到相應(yīng)的文字轉(zhuǎn)換而成的可播放的mp3音頻。
如果您想快速體驗服務(wù),建議您前往 語音合成體驗中心 或者在體驗中心右下側(cè)找到小程序二維碼,掃描進行體驗。
本文檔主要針對需要集成API的技術(shù)開發(fā)工程師,詳細描述語音合成能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
智云語音技術(shù)交流QQ群:861723255
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
本文檔主要針對開發(fā)人員,接入測試前需要獲取應(yīng)用ID和應(yīng)用密鑰;如果您還沒有,請按照 新手指南操作 。
平臺向每個賬戶贈送50元的體驗金,供用戶集成前測試所用,具體資費規(guī)則詳見 語音合成服務(wù)報價 。
接口說明
注:文字的UTF-8編碼長度不能超過2048.
有道智云TTS API HTTPS地址:
https://openapi.youdao.com/ttsapi
協(xié)議須知
調(diào)用方在集成語音合成API時,請遵循以下規(guī)則。
| 規(guī)則 |
描述 |
| 傳輸方式 |
HTTPS |
| 字符編碼 |
統(tǒng)一使用UTF-8編碼 |
| 請求方式 |
POST |
| 請求格式 |
表單 |
| 響應(yīng)格式 |
JSON |
接口調(diào)用參數(shù)
調(diào)用API需要向接口發(fā)送以下字段來訪問服務(wù)。
| 字段名 |
類型 |
含義 |
必填 |
備注 |
| q |
text |
待合成音頻文件的文本字符串 |
True |
比如:您好(文字的UTF-8編碼長度不能超過2048.) |
| appKey |
text |
應(yīng)用 ID |
True |
可在 應(yīng)用管理 查看 |
| salt |
text |
UUID |
True |
UUID,唯一通用識別碼,可在線生成 |
| sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
| signType |
text |
簽名類型 |
True |
v3 |
| curtime |
text |
時間戳(秒) |
true |
秒數(shù) |
| format |
text |
目標音頻格式,支持mp3 |
false |
mp3 |
| speed |
text |
合成音頻的語速 |
false |
比如:"1"為正常速度;最大為“2.0”,最小為“0.5” |
| volume |
text |
合成音頻的音量 |
false |
正常為"1.00",最大為"5.00",最小為"0.50" |
| voiceName |
text |
發(fā)言人名字 |
true |
比如:youxiaoqin |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計算方式為:input=q前10個字符 + q長度 + q后10個字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
注意:
- 請確認q為utf-8編碼。
- 在發(fā)送HTTP請求之前需要對各字段做 URL encode。
- 在生成簽名拼接
應(yīng)用ID+q+salt+應(yīng)用密鑰 字符串時,q 不需要做 URL encode,在生成簽名之后,發(fā)送 HTTP 請求之前才需要對要發(fā)送的文本字段 q 做URL encode。
- 對簽名和請求有疑問可以參看文檔結(jié)尾的常用語言實現(xiàn)demo。
輸出結(jié)果
** 需要根據(jù)Content-Type的值來確定合成是否成功 **
如果合成成功,正常返回為二進制語音文件,具體header信息 Content-type: audio/mp3;
如果合成出現(xiàn)錯誤,則會返回json結(jié)果,具體header信息為:Content-type: application/json。可以根據(jù)errorCode確定出現(xiàn)的問題(錯誤代碼列表)。
示例
{"errorCode":202}
發(fā)言人列表
| 中文名稱 |
調(diào)用參數(shù) |
音色 |
語種 |
計費分類 |
| 有小智 |
youxiaozhi |
男 |
中文 |
常見語種 |
| 有小薰 |
youxiaoxun |
女 |
中文 |
常見語種 |
| 有小沁 |
youxiaoqin |
女 |
中文 |
常見語種 |
| 有小芙 |
youxiaofu |
女 |
中文 |
常見語種 |
| 有雨婷 |
youyuting |
女 |
中文 |
常見語種 |
| 有小浩 |
youxiaohao |
男 |
中文 |
常見語種 |
| 有小楠 |
youxiaonan |
男 |
中文 |
常見語種 |
| 有小課 |
youxiaoke |
男 |
中文(支持講題、公示朗讀場景) |
常見語種 |
| 有小美 |
youxiaomei |
女 |
英文\美式 |
常見語種 |
| 有小英 |
youxiaoying |
女 |
英文\英式 |
常見語種 |
| 有小偉 |
youxiaowei |
男 |
英文\中文(混合) |
常見語種 |
| 有小官 |
youxiaoguan |
男 |
英文\英式 |
常見語種 |
| 有雅婷 |
youyating |
女 |
英文\美式 |
常見語種 |
| Saila |
Saila |
女 |
英文\英式 |
常見語種 |
| Auriana |
Auriana |
女 |
英文\英式 |
常見語種 |
| 有可醬 |
youkejiang |
女 |
日文 |
常見語種 |
| 原田君 |
yuantianjun |
男 |
日文 |
常見語種 |
| 宮崎帥 |
gongqishuai |
男 |
日文 |
非常見語種 |
| 有小貝 |
youxiaobei |
女 |
中文 |
常見語種 |
| 有小道 |
youxiaodao |
女 |
英文\美式 |
常見語種 |
| 薇小美 |
weixiaomei |
女 |
英文\美式 |
非常見語種 |
| 薇小英 |
weixiaoying |
男 |
英文\英式 |
非常見語種 |
| 有梅梅 |
youmeimei |
女 |
英文(詞典發(fā)音) |
常見語種 |
| 有瑩瑩 |
youyingying |
女 |
英文(詞典發(fā)音) |
常見語種 |
| 有小紹 |
youxiaoshao |
女 |
中英混(詞典發(fā)音) |
常見語種 |
| 樸智幼 |
piaozhiyou |
女 |
韓文 |
常見語種 |
| 樸泰言 |
piaotaiyan |
男 |
韓文 |
常見語種 |
| 安娜 |
anna |
女 |
葡語 |
非常見語種 |
| 薇粵粵 |
weiyueyue |
女 |
粵語 |
非常見語種 |
| 艾米娜 |
aimina |
女 |
阿拉伯 |
非常見語種 |
| 阿西亞 |
axiya |
男 |
阿拉伯 |
非常見語種 |
| 薇加泰 |
weijiatai |
男 |
加泰隆 |
非常見語種 |
| 薇小加 |
weixiaojia |
女 |
加泰隆 |
非常見語種 |
| Alois |
Alois |
男 |
捷克 |
非常見語種 |
| Bara |
bara |
女 |
丹麥 |
非常見語種 |
| Molly |
Molly |
女 |
荷蘭 |
非常見語種 |
| William |
William |
男 |
英語(澳大利亞) |
非常見語種 |
| Olivia |
Olivia |
女 |
英語(澳大利亞) |
非常見語種 |
| neale |
neale |
女 |
英語(英國) |
非常見語種 |
| Osric |
Osric |
男 |
英語(印度) |
非常見語種 |
| Rama |
Rama |
女 |
英語(印度) |
非常見語種 |
| Noah |
Noah |
男 |
英語(美國) |
非常見語種 |
| 芬小美 |
fenxiaomei |
女 |
芬蘭語 |
非常見語種 |
| 芬小帥 |
fenxiaoshuai |
男 |
芬蘭語 |
非常見語種 |
| 法小美 |
faxiaomei |
女 |
法語 |
非常見語種 |
| 法小帥 |
faxiaoshuai |
男 |
法語 |
非常見語種 |
| 法大拿 |
fadana |
女 |
法語(加拿大) |
非常見語種 |
| 德小美 |
dexiaomei |
女 |
德語 |
非常見語種 |
| 德小帥 |
dexiaoshuai |
男 |
德語 |
非常見語種 |
| 希小帥 |
xixiaoshuai |
男 |
希臘語 |
非常見語種 |
| 希伯小帥 |
xiboxiaoshuai |
男 |
希伯來語 |
非常見語種 |
| 印地小帥 |
yindixiaoshuai |
男 |
印地語 |
非常見語種 |
| 印地小美 |
yindixiaomei |
女 |
印地語 |
非常見語種 |
| 匈小帥 |
xiongxiaoshuai |
男 |
匈牙利語 |
非常見語種 |
| 意小帥 |
yixiaoshuai |
男 |
意大利語 |
非常見語種 |
| 意小美 |
yixiaomei |
女 |
意大利語 |
非常見語種 |
| 俄小美 |
exiaomei |
女 |
俄語 |
非常見語種 |
| 俄小帥 |
exiaoshuai |
男 |
俄語 |
非常見語種 |
| 西小美 |
xixiaomei |
女 |
西班牙語 |
非常見語種 |
| 埃德加 |
Edgar |
男 |
西班牙語 |
非常見語種 |
| 薇小越 |
weixiaoyue |
女 |
越南語 |
非常見語種 |
| 薇小南 |
weixiaonan |
男 |
越南語 |
非常見語種 |
注意: 更多中文音色發(fā)音人列表請查看發(fā)音人列表
- 以下音色支持pcm/wav格式:weixiaomei/weixiaoying
多音字設(shè)置發(fā)音
多音字示例:
<phoneme alphabet="sapi" ph="se 4">色</phoneme>彩
服務(wù)配置
錯誤代碼列表
| 錯誤碼 |
含義 |
| 101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認參數(shù)書寫是否正確。 |
| 102 |
不支持的語言類型 |
| 103 |
翻譯文本過長 |
| 104 |
不支持的API類型 |
| 105 |
不支持的簽名類型 |
| 106 |
不支持的響應(yīng)類型 |
| 107 |
不支持的傳輸加密類型 |
| 108 |
應(yīng)用ID無效,注冊賬號,登錄后臺創(chuàng)建應(yīng)用和實例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
| 109 |
batchLog格式不正確 |
| 110 |
無相關(guān)服務(wù)的有效實例,應(yīng)用沒有綁定服務(wù),可以新建服務(wù)綁定服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺創(chuàng)建語音合成應(yīng)用后方能使用。 |
| 111 |
開發(fā)者賬號無效 |
| 112 |
請求服務(wù)無效 |
| 113 |
q不能為空 |
| 114 |
不支持的圖片傳輸方式 |
| 201 |
解密失敗,可能為DES,BASE64,URLDecode的錯誤 |
| 202 |
簽名檢驗失敗 |
| 203 |
訪問IP地址不在可訪問IP列表 |
| 205 |
請求的接口與應(yīng)用的平臺類型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺類型一致。如有疑問請參考入門指南 |
| 206 |
因為時間戳無效導(dǎo)致簽名校驗失敗 |
| 207 |
重放請求(接口salt+curtime來防重放(即一個請求不可以被請求2次),salt最好為UUID。) |
| 301 |
辭典查詢失敗 |
| 302 |
翻譯查詢失敗 |
| 303 |
服務(wù)端的其它異常 |
| 304 |
會話閑置太久超時 |
| 401 |
賬戶已經(jīng)欠費停 |
| 402 |
offlinesdk不可用 |
| 411 |
訪問頻率受限,請稍后訪問 |
| 412 |
長請求過于頻繁,請稍后訪問 |
| 1001 |
無效的OCR類型 |
| 1002 |
不支持的OCR image類型 |
| 1003 |
不支持的OCR Language類型 |
| 1004 |
識別圖片過大 |
| 1201 |
圖片base64解密失敗 |
| 1301 |
OCR段落識別失敗 |
| 1411 |
訪問頻率受限 |
| 1412 |
超過最大識別字節(jié)數(shù) |
| 2003 |
不支持的語言識別Language類型 |
| 2004 |
合成字符過長 |
| 2005 |
不支持的音頻文件類型 |
| 2006 |
不支持的發(fā)音類型 |
| 2008 |
不支持的語速范圍 |
| 2009 |
服務(wù)權(quán)限異常 |
| 2011 |
合成音頻語速不在參數(shù)范圍內(nèi) |
| 2013 |
voiceName參數(shù)錯誤 |
| 2201 |
解密失敗 |
| 2301 |
服務(wù)的異常 |
| 2411 |
訪問頻率受限,請稍后訪問 |
| 2412 |
超過最大請求字符數(shù) |
| 2413 |
包含不合時宜詞匯 |
| 3001 |
不支持的語音格式 |
| 3002 |
不支持的語音采樣率 |
| 3003 |
不支持的語音聲道 |
| 3004 |
不支持的語音上傳類型 |
| 3005 |
不支持的語言類型 |
| 3006 |
不支持的識別類型 |
| 3007 |
識別音頻文件過大 |
| 3008 |
識別音頻時長過長 |
| 3009 |
不支持的音頻文件類型 |
| 3010 |
不支持的發(fā)音類型 |
| 3201 |
解密失敗 |
| 3301 |
語音識別失敗 |
| 3302 |
語音翻譯失敗 |
| 3303 |
服務(wù)的異常 |
| 3411 |
訪問頻率受限,請稍后訪問 |
| 3412 |
超過最大請求字符數(shù) |
| 4001 |
不支持的語音識別格式 |
| 4002 |
不支持的語音識別采樣率 |
| 4003 |
不支持的語音識別聲道 |
| 4004 |
不支持的語音上傳類型 |
| 4005 |
不支持的語言類型 |
| 4006 |
識別音頻文件過大 |
| 4007 |
識別音頻時長過長 |
| 4201 |
解密失敗 |
| 4301 |
語音識別失敗 |
| 4303 |
服務(wù)的異常 |
| 4411 |
訪問頻率受限,請稍后訪問 |
| 4412 |
超過最大請求時長 |
| 5001 |
無效的OCR類型 |
| 5002 |
不支持的OCR image類型 |
| 5003 |
不支持的語言類型 |
| 5004 |
識別圖片過大 |
| 5005 |
不支持的圖片類型 |
| 5006 |
文件為空 |
| 5201 |
解密錯誤,圖片base64解密失敗 |
| 5301 |
OCR段落識別失敗 |
| 5411 |
訪問頻率受限 |
| 5412 |
超過最大識別流量 |
| 9001 |
不支持的語音格式 |
| 9002 |
不支持的語音采樣率 |
| 9003 |
不支持的語音聲道 |
| 9004 |
不支持的語音上傳類型 |
| 9005 |
不支持的語音識別 Language類型 |
| 9301 |
ASR識別失敗 |
| 9303 |
服務(wù)器內(nèi)部錯誤 |
| 9411 |
訪問頻率受限(超過最大調(diào)用次數(shù)) |
| 9412 |
超過最大處理語音長度 |
| 10001 |
無效的OCR類型 |
| 10002 |
不支持的OCR image類型 |
| 10004 |
識別圖片過大 |
| 10201 |
圖片base64解密失敗 |
| 10301 |
OCR段落識別失敗 |
| 10411 |
訪問頻率受限 |
| 10412 |
超過最大識別流量 |
| 11001 |
不支持的語音識別格式 |
| 11002 |
不支持的語音識別采樣率 |
| 11003 |
不支持的語音識別聲道 |
| 11004 |
不支持的語音上傳類型 |
| 11005 |
不支持的語言類型 |
| 11006 |
識別音頻文件過大 |
| 11007 |
識別音頻時長過長,最大支持30s |
| 11201 |
解密失敗 |
| 11301 |
語音識別失敗 |
| 11303 |
服務(wù)的異常 |
| 11411 |
訪問頻率受限,請稍后訪問 |
| 11412 |
超過最大請求時長 |
| 12001 |
圖片尺寸過大 |
| 12002 |
圖片base64解密失敗 |
| 12003 |
引擎服務(wù)器返回錯誤 |
| 12004 |
圖片為空 |
| 12005 |
不支持的識別圖片類型 |
| 12006 |
圖片無匹配結(jié)果 |
| 13001 |
不支持的角度類型 |
| 13002 |
不支持的文件類型 |
| 13003 |
表格識別圖片過大 |
| 13004 |
文件為空 |
| 13301 |
表格識別失敗 |
| 15001 |
需要圖片 |
| 15002 |
圖片過大(1M) |
| 15003 |
服務(wù)調(diào)用失敗 |
| 17001 |
需要圖片 |
| 17002 |
圖片過大(1M) |
| 17003 |
識別類型未找到 |
| 17004 |
不支持的識別類型 |
| 17005 |
服務(wù)調(diào)用失敗 |
常見語言demo
Java 示例
語音合成 Java demo
Python3 示例
語音合成 python3 demo
C# 示例
語音合成 c# demo
Php1 示例
語音合成 php demo
go 示例
語音合成 go demo