五月天综合,亚洲午夜久久久精品影院,天天做天天爱天天综合网2021,无码人妻精品一区二区蜜桃网站

幫助與文檔 > 產(chǎn)品文檔 > 自然語言翻譯服務 > IOS_SDK文檔 > 語音翻譯
語音翻譯

語音翻譯 IOS SDK 簡介

概述

(1) 概念解釋

語音翻譯:將一段源語言音頻文件轉換成目標語言文本/語音,大大減輕傳統(tǒng)文本翻譯的讀寫成本,翻譯更輕松

(2) 說明

Hi,您好,歡迎使用有道智云語音翻譯iOS SDK。

本文檔主要針對需要集成語音翻譯服務iOS SDK的開發(fā)工程師,詳細描述有道智云語音翻譯服務能力及集成過程。

如果您有與我們商務合作的需求,可以通過以下方式聯(lián)系我們:

商務郵箱: AIcloud_Business@corp.youdao.com

如果您對文檔內容有任何疑問,可以通過以下幾種方式聯(lián)系我們:

客服QQ:1906538062

智云翻譯技術交流QQ 1群: 652880659

智云翻譯技術交流QQ 2群: 669384425

智云翻譯技術交流QQ 3群: 807539209

智云翻譯技術交流QQ 4群: 936752411

聯(lián)系郵箱: zhiyun@corp.youdao.com

溫馨提示:
本文檔主要針對開發(fā)人員,接入測試前需要在后臺創(chuàng)建iOS應用,并綁定語音翻譯實例;如果您還沒有,請按照新手指南 操作。
平臺向每個賬戶贈送50元的體驗金,供用戶集成前測試所用,具體資費規(guī)則詳見語音翻譯服務報價 。

功能介紹

有道語音翻譯SDK是有道開放平臺提供的云服務之一,是有道在線翻譯接口的一種實現(xiàn)。有道語音翻譯SDK支持中文與外文(詳見 支持語言)之間的互譯。

兼容性

支持設備:運行了iOS 8.0及以上系統(tǒng)的 iOS 設備

翻譯SDK集成指南

集成前提

開始集成SDK之前開發(fā)者需要登錄有道智云平臺 ,創(chuàng)建應用獲取應用ID(或者通過運營人員獲取應用ID),以便使用翻譯服務。

SDK集成步驟

SDK包導入

翻譯SDK由如下幾個SDK組成,用戶可根據(jù)需要組合使用:

文件說明
FanYiSDK.h頭文件(必選)
libbase.a語音翻譯相關sdk基礎庫(必選)
libspeechtransonline.a在線語音翻譯 SDK(必選,使用在線語音翻譯時使用)

1.添加頭文件和庫文件:將 translateSDK 添加到工程中,包括 FanYiSDK.h 頭文件和 libFanYiSDK.a 文件。可以直接將 translateSDK 文件夾拖動到工程中,也可以選擇File “Add files to ‘Project Name’…”

2.設置工程 Other Linker Flags 為 -ObjC

Alt

3.若使用離線功能,修改工程中任意一個類后綴名為 .mm,參見 demo 中 ViewController.mm,Xcode 10.0之前的版本需要添加libstc++.6.0.9.tbd,Xcode 10.0及以上版本需要設置C++ Standard Library為libc++;若未使用離線功能可跳過此步驟;

Alt

4.在工程build Phases – Link Binary With Libraries中添加libFanYiSDK.a, AdSupport.framework, CoreTelephony.framework, SystemConfiguration, libz.tbd和libsqlite3.tbd。如下:

Alt

SDK初始化

說明:所有的查詢都需要初始化appKey(應用ID),只執(zhí)行初始化一次即可。
注:appKey即應用ID

//初始化appKey(應用ID)
YDTranslateInstance *yd = [YDTranslateInstance sharedInstance];
yd.appKey = @"your appkey";

功能集成

1.在線語音翻譯功能

說明:請參考 demo 中 SpeechOnlineViewController的使用

(1) 使用的庫文件:頭文件、libbase.a、libspeechtransonline.as;

(2) 構造查詢器

YDSpeechOnlineRequest *request = [YDSpeechOnlineRequest request];
YDSpeechOnlineParam *param = [YDSpeechOnlineParam param];
param.from = @"en";//源語言
param.to = @"zh-CHS";//翻譯目標語言
param.format = @"wav";//語言文件格式
param.rate = @"8000";//采樣率
param.channel = @"1";//聲道數(shù),目前只支持單聲道,請寫固定值1
request.param = param;

(3) 將語音數(shù)據(jù)轉化為base64編碼

NSData *speechData = [NSData dataWithContentsOfURL:self.recordFileUrl];
NSString *base64Str = [speechData base64EncodedStringWithOptions:0];

(4) 執(zhí)行翻譯過程。

翻譯返回兩種情況,一種是成功,相關結果存儲在 result 參數(shù)中,另外一種是失敗,失敗信息放在 error,可根據(jù) 錯誤代碼列表 查詢。整個識別是異步的。

[request lookup:base64Str WithCompletionHandler:^(YDSpeechOnlineRequest *request, YDSpeechResult *result, NSError *error) {
    if (error) {
        //失敗
        NSLog(@"error:%@", error);
    }else {
        //成功
        [self handleReuslt:result];
    }
}];

語音翻譯結果說明

對于在線語音翻譯,服務器查詢結果返回數(shù)據(jù)如下:

{
"tSpeakUrl": “[url]“,
"query": "Sorry",
"translation": ["對不起"],
"errorCode": "0",
"dict": {
"url": "yddict://m.youdao.com/dict?le=eng&q=Sorry"
},
"webdict": {
"url": "http://m.youdao.com/dict?le=eng&q=Sorry"
},
"speakUrl": “[url]“
}

字段含義
tSpeakUrl翻譯結果發(fā)音地址,翻譯成功一定存在
errorCode翻譯結果錯誤碼,一定存在
query源語言文本,翻譯成功一定存在
translation翻譯結果,翻譯成功一定存在
dict詞典deeplink
webdict詞典web deeplink
speakUrl源語言發(fā)音地址,翻譯成功一定存在

SDK對上述json數(shù)據(jù)解析封裝為YDSpeechResult對象,如下

@interface YDSpeechResult : NSObject
/* 翻譯結果發(fā)音地址,翻譯成功一定存在 */
@property (nonatomic, copy) NSString *tSpeakUrl;
/* 翻譯結果錯誤碼,一定存在 */
@property (nonatomic, copy) NSString *errorCode;
/* 源語言文本,翻譯成功一定存在 */
@property (nonatomic, copy) NSString *query;
/* 翻譯結果,翻譯成功一定存在 */
@property (nonatomic, strong) NSArray *translation;
/* 詞典deeplink */
@property (nonatomic, strong) NSDictionary *dict;
/* 詞典web deeplink */
@property (nonatomic, strong) NSDictionary *webdict;
/* 源語言發(fā)音地址,翻譯成功一定存在 */
@property (nonatomic, copy) NSString *speakUrl;

+ (instancetype)initWithDict:(NSDictionary *)info;
@end

支持語言

英文名中文名代碼
Arabic阿拉伯語ar
Cantonese粵語yue
Catalan加泰隆語ca
Czech捷克語cs
Danish丹麥語da
Dutch荷蘭語nl
English (Australia)英語(澳大利亞)en-AUS
English (GB)英語(英國)en-GBR
English (India)英語(印度)en-IND
English (US)英語(美國)en-USA
Finnish芬蘭語fi
French法語fr
French (Canada)法語(加拿大)fr-CAN
German德語de
Greek希臘語el
Hebrew希伯來語he
Hindi印地語hi
Hungarian匈牙利語hu
Italian意大利語it
Indonesian印尼文id
Japanese日語ja
Korean韓語ko
Mandarin (China)普通話(中國)zh-CHN
Mandarin (Taiwan)普通話(中國臺灣)zh-TWN
Norwegian挪威語no
Polish波蘭語pl
Portuguese (Brazil)葡萄牙語(巴西)pt-BRA
Portuguese (Portugal)葡萄牙語(葡萄牙)pt
Romanian羅馬尼亞語ro
Russian俄語ru
Slovak斯洛伐克語sk
Spanish西班牙語es
Swedish瑞典語sv
Thai泰語th
Turkish土耳其語tr

注意

  1. 越南語和印尼語目前只支持和中文的互譯。
  2. 支持自動識別的語種包括:中文、英文。
  3. 格式支持:只支持wav格式。
  4. 采樣率:16k。
  5. 編碼:16bit位深的單聲道

(1). 運行程序崩潰?

檢查下是否對應的 SDK靜態(tài)庫包 是否放到當前工程目錄下。

(2). 翻譯沒結果?

檢查下翻譯接口回調的錯誤信息,保證申請的應用ID是有效且提前綁定了。

(3). 添加翻譯 SDK 之后審核沒有通過?

翻譯 SDK 使用了 AdSupport 框架獲取設備 IDFA 信息用以統(tǒng)計計費,提交審核時對應用是否有廣告選項請選擇“是”。

錯誤代碼列表

錯誤碼含義
101缺少必填的參數(shù)
102不支持的語言類型
103翻譯文本過長
104不支持的API類型
105不支持的簽名類型
106不支持的響應類型
107不支持的傳輸加密類型
108應用ID無效,注冊賬號,登錄后臺創(chuàng)建應用和實例并完成綁定,可獲得應用ID和應用密鑰等信息
109batchLog格式不正確
110無相關服務的有效實例
111開發(fā)者賬號無效
113q不能為空
201解密失敗,可能為DES,BASE64,URLDecode的錯誤
202簽名檢驗失敗
203訪問IP地址不在可訪問IP列表
205請求的接口與應用的平臺類型不一致,如有疑問請參考入門指南
206因為時間戳無效導致簽名校驗失敗
207重放請求
301辭典查詢失敗
302翻譯查詢失敗
303服務端的其它異常
401賬戶已經(jīng)欠費停
402offlinesdk不可用
411訪問頻率受限,請稍后訪問
412長請求過于頻繁,請稍后訪問
2003不支持的語音聲道
2004不支持的語音上傳類型
2005不支持的語言類型
2006不支持的識別類型
2201識別音頻文件過大
2301識別音頻時長過長
2411不支持的音頻文件類型
2412不支持的發(fā)音類型
3001不支持的語音格式
3002不支持的語音采樣率
3003不支持的語音聲道
3004不支持的語音上傳類型
3005不支持的語言類型
3006不支持的識別類型
3007識別音頻文件過大
3008識別音頻時長過長
3009不支持的音頻文件類型
3010不支持的發(fā)音類型
3201解密失敗
3301語音識別失敗
3302語音翻譯失敗
3303服務的異常
3411訪問頻率受限,請稍后訪問
3412超過最大請求字符數(shù)
5001無效的OCR類型
5002不支持的OCR image類型
5003不支持的語言類型
5004識別圖片過大
5005不支持的圖片類型
5006文件為空
5201解密錯誤,圖片base64解密失敗
5301OCR段落識別失敗
5411訪問頻率受限
5412超過最大識別流量
-1000未知錯誤
-2000查詢輸入為空

版本更新記錄

上線日期版本號更新內容
2017.05.08v1.0.0有道智云翻譯 iOS SDK上線,支持在線離線翻譯
2017.06.07v1.1.01. 拆分翻譯 SDK,SDK 拆分為多個文件,用戶可根據(jù)需要引用
2. 修復已知 bug
2017.06.30v1.2.0修復已知 bug
2017.07.24v1.3.01. 修復 deeplink 相關 bug
2017.08.16v1.4.01. 修復已知 bug
2018.02.09v1.7.0支持在線語音翻譯
2018.05.16v1.7.2支持在線圖片翻譯