長語音轉(zhuǎn)寫簡介
說明
Hi,您好,歡迎使用有道智云長語音轉(zhuǎn)寫接口服務(wù)。
本文檔主要針對需要集成HTTP API的技術(shù)開發(fā)工程師,詳細(xì)描述長語音轉(zhuǎn)寫能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
智云翻譯技術(shù)交流QQ 1群: 652880659
智云翻譯技術(shù)交流QQ 2群: 669384425
智云翻譯技術(shù)交流QQ 3群: 807539209
智云翻譯技術(shù)交流QQ 4群: 936752411
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
- 本文檔主要針對開發(fā)人員,接入測試前需要獲取應(yīng)用ID和應(yīng)用密鑰,并綁定實(shí)例;如果您還沒有,請按照 新手指南 獲取。
- 平臺向每個賬戶贈送50元的體驗(yàn)金,供用戶集成前測試所用。
接口說明
長語音轉(zhuǎn)寫服務(wù),將一小時內(nèi)的音頻數(shù)據(jù)轉(zhuǎn)換成文本數(shù)據(jù),為信息處理和數(shù)據(jù)挖掘提供基礎(chǔ)。您只需要通過調(diào)用長語音轉(zhuǎn)寫 API就可以將音頻數(shù)據(jù)轉(zhuǎn)換成文本數(shù)據(jù)。
協(xié)議須知
調(diào)用方在集成長語音轉(zhuǎn)寫API時,請遵循以下規(guī)則。
規(guī)則 |
描述 |
傳輸方式 |
HTTPS |
請求方式 |
POST |
字符編碼 |
統(tǒng)一使用UTF-8 編碼 |
請求格式 |
表單 |
響應(yīng)格式 |
JSON |
接口調(diào)用參數(shù)
長語音轉(zhuǎn)寫線上調(diào)用地址:
http://openapi.youdao.com
音頻格式
格式支持:wav(不壓縮,pcm編碼,采樣率:推薦16k ,編碼:16bit位深的單聲道),aac,mp3
格式 |
代碼 |
wav |
wav |
mp3 |
mp3 |
aac |
aac |
支持的語種
語種名稱 |
代碼 |
支持的時長限制 |
中文 |
zh-CHS |
4h |
日文 |
ja |
1h |
英文 |
en |
4h |
韓文 |
ko |
1h |
粵語 |
yue |
1h |
西班牙語 |
es |
1h |
葡萄牙語 |
pt |
1h |
法語 |
fr |
1h |
德語 |
de |
1h |
俄語 |
ru |
1h |
文件上傳接口定義
預(yù)處理接口
接口uri:/api/audio/prepare
接口參數(shù):
參數(shù)名稱 |
類型 |
含義 |
是否必填 |
示例 |
salt |
text |
uuid(唯一通用識別碼) |
True |
uuid,唯一通用識別碼 |
type |
text |
上傳類型, 僅支持base64上傳,請?zhí)顚懝潭ㄖ? |
True |
1 |
appKey |
text |
應(yīng)用ID |
True |
可在 應(yīng)用管理 查看 |
sliceNum |
string |
文件分片數(shù)目(建議分片大小為10M,若文件<10M,則slice_num=1 |
True |
1 |
name |
text |
文件名稱 |
True |
test |
fileSize |
text |
文件大小,注意:文件大小限制為500M,取值范圍為:1024-589824000 byte |
True |
15234 |
curtime |
text |
時間戳 |
True |
秒數(shù) |
langType |
text |
源語言 |
True |
支持語言列表 |
sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰) |
signType |
text |
簽名版本 |
True |
v4 |
format |
text |
語音文件的格式,wav |
True |
mp3/wav/aac/m4a/amr |
noitn |
text |
是否進(jìn)行阿拉伯?dāng)?shù)字轉(zhuǎn)換,日期轉(zhuǎn)換的操作。如 "十點(diǎn)五分" 到 “10:05” 的轉(zhuǎn)換。傳1是漢字,傳0是阿拉伯?dāng)?shù)字。 |
false |
0/1(不傳默認(rèn)為0) |
needSpeakerId |
text |
是否需要返回說話人id (1:是, 0:否) |
false |
0/1(默認(rèn)為0) |
speakerNum |
text |
說話人人數(shù)(0 自動識別,范圍:[0-10]) |
false |
(默認(rèn)為0) |
hotWords |
String |
1、熱詞總長度:5000(總長度限制較大,實(shí)際到不了5000);2、單個熱詞內(nèi)容:長度限制1 - 20 ;3、權(quán)重取值目前只能是1; 4、熱詞與熱詞之間 用 , (英文逗號)分隔 |
false |
1、熱詞格式示例:熱詞|權(quán)重; 2、目前模型僅支持中文或單個英文字母生效,如果傳其他文本會導(dǎo)致熱詞不生效,但不會有錯誤信息;3、傳空字符串表示不使用熱詞,不會報錯;4、中文傳參為langType="zh-CHS2" |
- 注意:熱詞的作用:在音頻文件里面識別到相關(guān)內(nèi)容之后,優(yōu)先展示為設(shè)置的熱詞效果。
文件分片上傳接口
接口uri:/api/audio/upload
接口說明:
預(yù)處理成功,調(diào)用文件上傳接口;按預(yù)處理設(shè)置的分片信息(sliceNum)依次上傳音頻切片(文件以二進(jìn)制方式multipart讀取上傳),
直到全部切片上傳成功(如預(yù)處理時 sliceNum=2,則需將音頻切分成兩部分,sliceId=1和2,并按順序調(diào)用該接口);
上一切片成功上傳,才可進(jìn)行下一切片的上傳操作。調(diào)用過程中若出現(xiàn)異常,可重試若干次。
接口參數(shù):
參數(shù)名稱 |
類型 |
含義 |
是否必填 |
示例 |
q |
text |
taskid |
True |
任務(wù)id |
appKey |
text |
應(yīng)用ID |
True |
可在 應(yīng)用管理 查看 |
salt |
text |
UUID(唯一識別通用碼) |
True |
UUID |
curtime |
text |
時間戳(秒) |
True |
秒 |
sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰) |
signType |
text |
簽名版本 |
True |
v4 |
sliceId |
text |
語音文件分片的Id |
True |
1 |
file |
text |
文件 |
True |
multipart的name為file |
type |
text |
上傳的類型 |
false |
1 |
{????
"errorCode":?"0",?//錯誤碼????
"msg":?"success",?//信息說明????
"result":?null?//返回的任務(wù)ID
}
合并文件
參數(shù)名稱 |
類型 |
含義 |
是否必填 |
示例 |
q |
text |
taskid |
True |
任務(wù)id |
appKey |
text |
應(yīng)用ID |
True |
可在 應(yīng)用管理 查看 |
salt |
text |
UUID(唯一識別通用碼) |
True |
UUID |
curtime |
text |
時間戳(秒) |
True |
秒 |
sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰) |
signType |
text |
簽名版本 |
True |
v4 |
{
????"errorCode":?"0",?//錯誤碼
????"msg":?"success",?//信息說明
????"result":?null?//返回的任務(wù)ID
}
查詢轉(zhuǎn)寫進(jìn)度
接口uri:/api/audio/get_progress
接口說明:
在調(diào)用方發(fā)出合并文件請求后,服務(wù)端已將任務(wù)列入計劃。在獲取結(jié)果前,調(diào)用方需輪詢該接口查詢?nèi)蝿?wù)當(dāng)前狀態(tài)。 當(dāng)且僅當(dāng)任務(wù)狀態(tài)=(轉(zhuǎn)寫結(jié)果上傳完成),才可調(diào)用獲取結(jié)果接口獲取轉(zhuǎn)寫結(jié)果。 輪詢策略由調(diào)用方?jīng)Q定,建議每隔10分鐘輪詢一次。狀態(tài)碼說明見附錄。
接口參數(shù):
參數(shù)名稱 |
類型 |
含義 |
是否必填 |
示例 |
q |
text |
taskid |
True |
任務(wù)id |
appKey |
text |
應(yīng)用ID |
True |
可在 應(yīng)用管理 查看 |
salt |
text |
UUID(唯一識別通用碼) |
True |
UUID |
curtime |
text |
時間戳(秒) |
True |
秒 |
sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰) |
signType |
text |
簽名版本 |
True |
v4 |
{
????"errorCode":?"0",?//錯誤碼
????"msg":?"success",?//信息說明
????"result": [{"status":"9","taskId":"xxxx"}]//處理狀態(tài):processing;complete
}
查詢轉(zhuǎn)寫結(jié)果
接口uri:/api/audio/get_result
接口說明:
當(dāng)任務(wù)處理進(jìn)度狀態(tài)為完成時(見查詢處理進(jìn)度接口),調(diào)用該接口獲取轉(zhuǎn)寫結(jié)果。這是轉(zhuǎn)寫流程的最后一步。 轉(zhuǎn)寫結(jié)果各字段的詳細(xì)說明見轉(zhuǎn)寫結(jié)果說明文檔。 服務(wù)端也支持主動回調(diào),轉(zhuǎn)寫完成之后主動發(fā)送轉(zhuǎn)寫結(jié)果到用戶配置的回調(diào)地址
接口參數(shù):
參數(shù)名稱 |
類型 |
含義 |
是否必填 |
示例 |
q |
text |
taskid |
True |
任務(wù)id |
appKey |
text |
應(yīng)用ID |
True |
可在 應(yīng)用管理 查看 |
salt |
text |
UUID(唯一識別通用碼) |
True |
UUID |
curtime |
text |
時間戳(秒) |
True |
秒 |
sign |
text |
簽名 |
True |
sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰) |
signType |
text |
簽名版本 |
True |
v4 |
{
"result": [{
"sentence": "Have a good day.",
"vad_id": 1,
"word_timestamps": [70, 270, 390, 710],
"word_timestamps_eds": [190, 390, 510, 830],
"words": ["Have", "a", "good", "day."],
"speaker": 1,
"partial": false}],
"errorCode": "0"
}
常用語言demo
java示例
長語音轉(zhuǎn)寫 python demo
python3 示例
長語音轉(zhuǎn)寫 python demo
go 示例
長語音轉(zhuǎn)寫 go demo
任務(wù)狀態(tài)碼
狀態(tài)ID |
狀態(tài)描述 |
0 |
任務(wù)創(chuàng)建成功 |
1 |
音頻上傳完成 |
2 |
音頻合并完成 |
3 |
音頻轉(zhuǎn)寫中 |
4 |
轉(zhuǎn)寫結(jié)果處理中 |
5 |
轉(zhuǎn)寫完成 |
6 |
音頻轉(zhuǎn)寫失敗,需要重試 |
9 |
轉(zhuǎn)寫結(jié)果上傳完成 |
12 |
音頻轉(zhuǎn)碼失敗 |
13 |
音頻時長超過限制 |
21 |
包含不合時宜詞匯 |
狀態(tài)碼
狀態(tài)碼 |
狀態(tài)碼含義 |
101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書寫是否正確。 |
102 |
不支持的語言類型 |
103 |
翻譯文本過長 |
104 |
不支持的API類型 |
105 |
不支持的簽名類型 |
106 |
不支持的響應(yīng)類型 |
107 |
不支持的傳輸加密類型 |
108 |
應(yīng)用ID無效,注冊賬號,登錄后臺創(chuàng)建應(yīng)用和實(shí)例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 |
batchLog格式不正確 |
110 |
無相關(guān)服務(wù)的有效應(yīng)用,應(yīng)用沒有綁定服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺創(chuàng)建語音合成實(shí)例綁定應(yīng)用后方能使用。 |
111 |
開發(fā)者賬號無效 |
112 |
請求服務(wù)無效 |
113 |
q不能為空 |
114 |
不支持的圖片傳輸方式 |
201 |
解密失敗,可能為DES,BASE64,URLDecode的錯誤 |
202 |
簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用ID和應(yīng)用密鑰的正確性,仍返回202,一般是編碼問題。請確保翻譯文本 q 為UTF-8編碼. |
203 |
訪問IP地址不在可訪問IP列表 |
205 |
請求的接口與應(yīng)用的平臺類型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺類型一致。如有疑問請參考入門指南 |
206 |
因?yàn)闀r間戳無效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請求(接口salt+curtime來防重放(即一個請求不可以被請求2次),所以salt最好為UUID。) |
16001 |
noitn參數(shù)錯誤 |
4000000 |
q不正確 |
4000001 |
文件大小不匹配 |
4000002 |
文件為空 |
4000003 |
文件名稱為空 |
4000004 |
不支持的格式 |
4000005 |
sliceNum不正確 |
4000006 |
sliceId不正確 |
4000007 |
不支持的文件大小 |
4000008 |
不支持的語言 |
4000009 |
任務(wù)不存在 |
4000010 |
文件上傳失敗 |
4000011 |
文件大小校驗(yàn)錯誤 |
4000017 |
熱詞非法 |
4035001 |
轉(zhuǎn)寫結(jié)果下載失敗 |