百度語音識別技術

百度語音識別技術

“將聲音轉化成文字,讓你的套用長上耳朵”,百度語音識別技術通過百度語音開放平台為廣大開發者提供精準、免費、安全、穩定的服務。百度的語音識別技術採用了比目前主流語音識別系統更為簡單有效的方法,他們採用了類似神經網路的深度學習算法來取代了以往的識別模組,從而大幅提升了識別效率。

基本信息

優勢能力

完全永久免費
業界首創完全永久免費新形式,為開發者提供基於百度大腦的業界頂級聲學模型和語音模型。完全免費,永久使用,徹底擺脫有效期限制。

全平台REST API
行業率先推出語音識別全平台REST API,再也不用糾結沒有SDK、SDK包太大,採用http方式請求,可適用於任何平台的語音識別,給你最大自由度!

離線線上融合模式
SDK可以根據當前網路狀況及指令的類型,自動判斷使用本地引擎還是雲端引擎進行語音識別,極速識別、流量節省兩不誤!

深度語義解析
支持多達35個垂類領域的語義理解定製,以及自定義指令集和問答對設定。讓你的套用理解用戶的意圖!

場景識別定製
開發者可根據使用場景,自定義設定識別垂類模型。有音樂、視頻、地圖、遊戲、電商共17個垂類可供選擇。一步設定,精準到位!

自定義上傳語料、訓練模型
開發者可以自行上傳詞庫,訓練專屬識別模型。提交的語料越多、越全,語音識別的效果提升也會越明顯。

接入指南

註冊百度開發者

使用百度語音技術服務首先需要註冊成為百度開發者,如果您在登入百度帳號後進入 “應該管理”出現如下提示,說明您的百度帳號還沒有註冊成為百度開發者。請按要求填寫開發者信息並完成百度開發者的註冊。

創建套用

在首頁登入已經註冊為開發者的百度賬號,然後點擊頁面上方的 “套用管理”進入套用管理頁面。如果您之前在百度開發者中心創建過套用,則會出現您之前曾經創建過的套用;如果您之前沒有創建過套用,則需要新創建一個套用。

1、點擊右上角填寫套用名稱並選擇套用垂類信息,即可創建一個新的套用。

2、創建成功後,新創建的套用會出現在套用列表最上方的位置。

3、點擊“查看Key”可以查看當前套用的 AppID、 API Key、Secret Key信息。

開通服務

如果您曾經在百度開發者中心管理控制台申請開通了語音技術服務,在這裡您可以直接使用;對於新創建或從未開通語音技術服務的套用,則需要開通語音技術服務之後才可以使用。
1、點擊套用卡片上的按鈕,選擇“語音識別”服務進行開通。

2、 “語音識別”服務開通成功後即可獲得 50000次/天的線上調用次數配額。

申請提高配額

如果開通服務時初始分配的線上服務調用配額無法滿足您的需求,可以申請提高配額。

1、點擊對應服務的 “管理”在下拉列表中選擇 “申請提高配額”。填寫詳細的預計日調用次數、套用介紹等信息後提交。管理員會在1個工作日內完成審核。

2、如果審核通過,則當前套用該服務的日調用次數將不再受配額限制。如果審核被拒絕,您可以再次提交申請。

申請離線授權

選擇套用的語音識別的管理選單,點擊“申請離線License”。

選擇套用類型為Android或者iOS,填寫並提交離線授權所需信息:Android套用為套用包名和簽名MD5值,iOS套用為Bundle ID。提交成功後即獲取離線識別正式授權。
註:請確保填寫提交的信息準確,否則會無法通過離線授權驗證導致離線識別不可用。

如果暫時沒有套用包名或者簽名信息,可以先下載臨時License檔案,並集成到本地項目中進行測試使用。臨時License有效期為30天,失效後請申請正式license,並從您的項目中刪除臨時的license。

開發集成

前往語音識別服務相關下載頁面,下載開發所需的 SDK 及開發文檔到本地進行集成開發。

常見問題

Q:語音識別REST API支持的音頻格式、採樣率有哪些?
A:支持的壓縮格式有:pcm(不壓縮)、wav、opus、speex、amr、x-flac。原始 PCM 的錄音參數必須符合 8k/16k 採樣率、16bit 位深、單聲道。

Q:語音識別 REST API 最長支持多長的錄音?
A: 最長支持60s的錄音檔案。對檔案大小沒有限制,只對時長有限制。

Q:語音識別SDK支持的音頻格式、採樣率有哪些?
A:
Android SDK:支持Android 2.2及以上系統,支持ARM\X86架構。安裝包最小增加200k,支持8k/16k採樣率,支持pcm格式。

iOS SDK:支持iOS 5.0及以上系統,支持ARM-v7\ARM-v7s\ARM64\i386\x86_64架構。安裝包最小增加400k,支持8k/16k採樣率,支持pcm格式。

Q:什麼是語音識別REST API?有什麼注意事項?
A:語音識別全平台REST API,採用http方式請求,可適用於任何平台的語音識別。使用REST API,錄音、壓縮及上傳模組需要自行開發。且REST API語音識別暫時不支持語義解析。

Q:百度語音是否單獨提供錄音功能,以及語音通訊功能?
A:不單獨提供獨立錄音的功能,目前識別SDK包含語音輸入和識別功能。語音通訊功能需開發者自行搭建。

Q:語音識別REST API和SDK的區別是什麼?
A: REST API:開發者上傳錄音——百度語音進行識別——識別結果返回開發者
SDK:百度語音提供從錄音到識別結果返回的整體解決方案

Q:語音識別通過哪個接口獲取音頻信息?
A:
Android SDK:當VoiceClientStatusChangeListener.onClientStatusChange(int status, Object obj) 的status是VoiceRecognitionClient.CLIENT_STATUS_AUDIO_DATA時,obj為byte[]音頻數據;

iOS SDK:MVoiceRecognitionClientDelegate的(void)VoiceRecognitionClientWorkStatus:(int) aStatus obj:(id)aObj;的aStatus是EVoiceRecognitionClientWorkStatusNewRecordData時,aObj為NSData音頻數據。
數據格式均為pcm,採樣率可通過VoiceRecognitionConfig.getSampleRate()/[[BDVoiceRecognitionClient sharedInstance] getCurrentSampleRate]獲取,獲取的音頻格式是位深16bit,單聲道。

Q:如何才能提高語音識別的準確率?
A: 自定義語音識別設定:打開百度開放雲平台,在目前創建的套用下進行自定義語音識別設定。上傳識別關鍵字文本,保存並生效。
設定對應的語音識別垂類:在代碼中填寫識別的垂類領域,識別結果將優先指向已設定的垂類,可以使得識別結果更準確

Q:百度語音SDK與其他百度SDK,或其他第三方SDK衝突時,如何解決?
A: 與其他百度SDK衝突一般是由於使用了相同的基礎庫galaxy.jar,請檢查是否重複導入了該jar包;與其他第三方SDK衝突一般是由於so庫的架構不統一,請保證工程libs目錄下armeabi/armeabi-v7a/x86/mips目錄的so庫均一致,如果不能保證一致,則一般只能所有SDK僅使用armeabi架構的so庫

Q:首次開啟語音識別功能的延遲時間較長,需要如何調控?
A: 首次延遲時間較長一般是由於許可權驗證造成,可以通過預先調用接口:
(int)verifyApiKey:(NSString)apiKey withSecretKey:(NSString)secretKey;
來進行驗證。首次開啟語音時就不需要再傳送驗證請求,從而降低語音識別啟動的延遲。

Q:如何在語音識別時獲取音頻檔案?
A:
Api:cp伺服器自己備存用戶錄音信息
Sdk:可以通過CLIENT_STATUS_AUDIO_DATA回調,將回調對象強轉成byte[]順序寫入到檔案中即可得到原始的音頻檔案。

Q:語音識別垂類是什麼意思?
A: 語音識別垂類就是特指某個領域的意思,開發者可以根據用戶使用場景設定特定領域使得識別結果更準確。比如垂直領域設定為”音樂“,則在語音識別時會優先識別為音樂相關的歌曲名歌手名或者歌詞。

Q:為什麼語音識別Demo的API_Key和Secret_Key是空的還能進行識別呢?我開發的套用的API_Key和Secret_Key是不是必須得填寫呢?
A: SDK自帶demo用的特殊的方式驗證的,故可以不使用AK和SK。開發者自行開發的套用AK和SK是必須填寫的,否則無法調用語音識別。

相關詞條

熱門詞條

聯絡我們