(1) 概念解釋
實時語音識別:可實現對連續音頻流的實時識別,轉換成文本信息并返對應文字流。
(2) 說明
Hi,您好,歡迎使用有道智云實時語音識別 IOS SDK。
本文檔主要針對需要集成 實時語音識別 IOS SDK的開發工程師,詳細描述實時語音識別能力及集成過程。
如果您有與我們商務合作的需求,可以通過以下方式聯系我們:
商務郵箱: AIcloud_Business@corp.youdao.com
如果您對文檔內容有任何疑問,可以通過以下幾種方式聯系我們:
客服QQ:1906538062
智云語音技術交流QQ群:861723255
聯系郵箱: zhiyun@corp.youdao.com
溫馨提示: 本文檔主要針對開發人員,接入測試前需要在后臺創建 IOS 應用,并綁定實例;如果您還沒有,請按照 新手指南 操作。 平臺向每個賬戶贈送50元的體驗金,供用戶集成前測試所用,具體資費規則詳見 實時語音識別服務報價 。
有道智云實時語音識別 SDK 是有道智云開放平臺提供的云服務之一,是有道在線實時語音識別接口的一種實現,支持在線實時語音識別。
支持設備:運行了iOS 8.0及以上系統的 iOS 設備
開始集成SDK之前開發者需要登錄 有道智云平臺 ,創建應用獲取應用ID(或者通過運營人員獲取應用ID),以便使用實時語音識別服務。
實時語音識別 SDK 由如下幾個 SDK 組成,FanYiSDK.h、libbase.a、libStreamASR.a
(1). 添加頭文件和庫文件:將實時語音識別 SDK 添加到工程中,包括 FanYiSDK.h頭文件、libbase.a和libStreamASR.a文件。
(2). 設置工程Other Linker Flags為-ObjC。
(3). 在工程build Phases – Link Binary With Libraries中添加libbase.a, AdSupport.framework, CoreTelephony.framework, SystemConfiguration, libz.tbd和libsqlite3.tbd。
說明:所有的查詢都需要初始化key,只執行初始化一次即可。
//初始化key
YDTranslateInstance *yd = [YDTranslateInstance sharedInstance];
yd.appKey = @"your appkey";
說明:支持實時實時語音識別,目前支持中英文,請參考 demo 中 StreamASRController 的使用;
-格式支持:只支持wav格式。 -采樣率:推薦16k。 -編碼:16bit位深的單聲道
YDSpeechRecognizer *recognizer = [YDSpeechRecognizer sharedRecognizer];
recognizer.delegate = self;
YDSpeechRecognizerParam *param = [YDSpeechRecognizerParam param];
param.langType = @"zh-CHS";//源語言
param.rate = @"16000";//采樣率
param.format = @"wav";//語音文件格式
param.vadBOS = 2000;//前端點靜音檢測時長,ms
param.vadEOS = 2000;//后端點靜音檢測時長,ms
recognizer.param = param;
執行[self.recognizer startListening];開始實時語音識別,結果將在代理方法中回調給開發者;
#pragma mark - speech recognizer delegate
- (void)onBeginOfSpeech {
[self startSpeakingAnimation];
NSLog(@"------speech start-----");
}
- (void)onEndOfSpeech {
[self endSpekingAnimation];
NSLog(@"------speech end-----");
}
- (void)onResults:(NSDictionary *)result isLast:(BOOL)isLast {
NSString *sentence = result[@"sentence"];
self.recognizedLabel.text = [NSString stringWithFormat:@"%@%@", self.displayingText, sentence];
if (isLast) {
[self.displayingText appendString:sentence];
}
}
- (void)onCompleted:(NSError *)speechError {
[self endSpekingAnimation];
NSLog(@"------speech completed-----");
}
- (void)onConstantlyQuietIsBOS:(BOOL)isBOS {
NSLog(@"檢測到%@靜音", isBOS ? @"前端點" : @"后端點");
}
| 語言 | 代碼 |
|---|---|
| 中文 | zh-CHS |
| 英文 | en |
| 錯誤碼 | 含義 |
|---|---|
| 101 | 缺少必填的參數 |
| 102 | 不支持的語言類型 |
| 103 | 翻譯文本過長 |
| 104 | 不支持的API類型 |
| 105 | 不支持的簽名類型 |
| 106 | 不支持的響應類型 |
| 107 | 不支持的傳輸加密類型 |
| 108 | 應用ID無效,注冊賬號,登錄后臺創建應用和實例并完成綁定,可獲得應用ID和應用密鑰等信息 |
| 109 | batchLog格式不正確 |
| 110 | 無相關服務的有效實例 |
| 111 | 開發者賬號無效 |
| 113 | q不能為空 |
| 114 | 不支持的圖片傳輸方式 |
| 201 | 解密失敗,可能為DES,BASE64,URLDecode的錯誤 |
| 202 | 簽名檢驗失敗 |
| 203 | 訪問IP地址不在可訪問IP列表 |
| 205 | 請求的接口與應用的平臺類型不一致,如有疑問請參考入門指南 |
| 206 | 因為時間戳無效導致簽名校驗失敗 |
| 207 | 重放請求 |
| 301 | 辭典查詢失敗 |
| 302 | 翻譯查詢失敗 |
| 303 | 服務端的其它異常 |
| 304 | 會話閑置太久超時 |
| 401 | 賬戶已經欠費停 |
| 402 | offlinesdk不可用 |
| 411 | 訪問頻率受限,請稍后訪問 |
| 412 | 長請求過于頻繁,請稍后訪問 |
| 1001 | 無效的OCR類型 |
| 1002 | 不支持的OCR image類型 |
| 1003 | 不支持的OCR Language類型 |
| 1004 | 識別圖片過大 |
| 1201 | 圖片base64解密失敗 |
| 1301 | OCR段落識別失敗 |
| 1411 | 訪問頻率受限 |
| 1412 | 超過最大識別字節數 |
| 2003 | 不支持的語音聲道 |
| 2004 | 不支持的語音上傳類型 |
| 2005 | 不支持的語言類型 |
| 2006 | 不支持的識別類型 |
| 2201 | 識別音頻文件過大 |
| 2301 | 識別音頻時長過長 |
| 2411 | 不支持的音頻文件類型 |
| 2412 | 不支持的發音類型 |
| 3001 | 不支持的語音格式 |
| 3002 | 不支持的語音采樣率 |
| 3003 | 不支持的語音聲道 |
| 3004 | 不支持的語音上傳類型 |
| 3005 | 不支持的語言類型 |
| 3006 | 不支持的識別類型 |
| 3007 | 識別音頻文件過大 |
| 3008 | 識別音頻時長過長 |
| 3009 | 不支持的音頻文件類型 |
| 3010 | 不支持的發音類型 |
| 3201 | 解密失敗 |
| 3301 | 語音識別失敗 |
| 3302 | 語音翻譯失敗 |
| 3303 | 服務的異常 |
| 3411 | 訪問頻率受限,請稍后訪問 |
| 3412 | 超過最大請求字符數 |
| 4001 | 不支持的語音識別格式 |
| 4002 | 不支持的語音識別采樣率 |
| 4003 | 不支持的語音識別聲道 |
| 4004 | 不支持的語音上傳類型 |
| 4005 | 不支持的語言類型 |
| 4006 | 識別音頻文件過大 |
| 4007 | 識別音頻時長過長 |
| 4201 | 解密失敗 |
| 4301 | 語音識別失敗 |
| 4303 | 服務的異常 |
| 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 | 服務器內部錯誤 |
| 9411 | 訪問頻率受限(超過最大調用次數) |
| 9412 | 超過最大處理語音長度 |
| 10001 | 無效的OCR類型 |
| 10002 | 不支持的OCR image類型 |
| 10004 | 識別圖片過大 |
| 10201 | 圖片base64解密失敗 |
| 10301 | OCR段落識別失敗 |
| 10411 | 訪問頻率受限 |
| 10412 | 超過最大識別流量 |
| 13001 | 不支持的角度類型 |
| 13002 | 不支持的文件類型 |
| 13003 | 表格識別圖片過大 |
| 13004 | 文件為空 |
| 13301 | 表格識別失敗 |
| 17001 | 需要圖片 |
| 17002 | 圖片過大(1M) |
| 17003 | 識別類型未找到 |
| 17004 | 不支持的識別類型 |
| 17005 | 服務調用失敗 |
| -1000 | 未知錯誤 |
| -2000 | 查詢輸入為空 |
| 上線日期 | 版本號 | 更新內容 |
|---|---|---|
| 2018.11.02 | v1.0.0 | 增加流式語音識別 |
| 2019.02.18 | v1.1.0 | 流式語音識別wav語音幀格式錯誤fix |