長語音轉(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)用密鑰,并綁定實例;如果您還沒有,請按照 新手指南 獲取。
- 平臺向每個賬戶贈送50元的體驗金,供用戶集成前測試所用。
接口說明
長語音轉(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
支持的語種
語種名稱 | 代碼 | 支持的時長限制 |
---|
中文 | zh-CHS | 4h |
日文 | ja | 1h |
英文 | en | 4h |
韓文 | ko | 1h |
粵語 | yue | 1h |
西班牙語 | es | 1h |
葡萄牙語 | pt | 1h |
法語 | fr | 1h |
德語 | de | 1h |
俄語 | ru | 1h |
文件上傳接口定義
預(yù)處理接口
接口參數(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)換的操作。如 "十點五分" 到 “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(總長度限制較大,實際到不了5000);2、單個熱詞內(nèi)容:長度限制1 - 20 ;3、權(quán)重取值目前只能是1; 4、熱詞與熱詞之間 用 , (英文逗號)分隔 | false | 1、熱詞格式示例:熱詞/權(quán)重; 2、目前模型僅支持中文或單個英文字母生效,如果傳其他文本會導(dǎo)致熱詞不生效,但不會有錯誤信息;3、傳空字符串表示不使用熱詞,不會報錯;4、中文傳參為langType="zh-CHS2" |
文件分片上傳接口
- 接口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ù)名稱 | 類型 | 含義 | 是否必填 | 示例 |
---|
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
}
合并文件
- 接口uri:/api/audio/merge
- 接口說明:
全部文件切片上傳成功后,調(diào)用該接口,通知服務(wù)端進(jìn)行文件合并與轉(zhuǎn)寫操作。 該接口不會返回轉(zhuǎn)寫結(jié)果,而是通知服務(wù)端將任務(wù)列入轉(zhuǎn)寫計劃。轉(zhuǎn)寫的結(jié)果通過 getResult 接口獲取。
參數(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ù)名稱 | 類型 | 含義 | 是否必填 | 示例 |
---|
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ù)名稱 | 類型 | 含義 | 是否必填 | 示例 |
---|
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)用和實例并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 | batchLog格式不正確 |
110 | 無相關(guān)服務(wù)的有效應(yīng)用,應(yīng)用沒有綁定服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺創(chuàng)建語音合成實例綁定應(yīng)用后方能使用。 |
111 | 開發(fā)者賬號無效 |
112 | 請求服務(wù)無效 |
113 | q不能為空 |
114 | 不支持的圖片傳輸方式 |
201 | 解密失敗,可能為DES,BASE64,URLDecode的錯誤 |
202 | 簽名檢驗失敗,如果確認(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 | 因為時間戳無效導(dǎo)致簽名校驗失敗 |
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 | 文件大小校驗錯誤 |
4000017 | 熱詞非法 |
4035001 | 轉(zhuǎn)寫結(jié)果下載失敗 |