2016-09-14 39 views
2

我想製作一個語音識別器應用程序,它可以錄製用戶的語音。 我不想在做這件事的時候做任何對話,所以startActivityForResult with recognizerIntent超出了選項。 (我知道如果使用這種方法,我可以獲得音頻)SpeechRecognizer與安卓音頻錄製

我正在使用SpeechRecognizer,並且撥打startListening來收聽用戶的音頻。我在onResults中獲得了非常好的結果。

現在,我還需要在我的設備中存儲在SD卡中的用戶音頻。爲此,我嘗試了MediaRecorder以及AudioRecord,但沒有取得任何成功。我總是得到網絡錯誤onErrorRecognitionListener。無論如何我無法找到如何解決這個問題。我也嘗試從onBufferReceived獲取數據,但徒勞無功。

如果任何人都可以對此有所瞭解,那就太好了。

[編輯]

夥計們,這不是record/save audio from voice recognition intent重複,這是略有不同。您提供的答案是Google Keep。保持使用對話框來獲取數據。我不需要在屏幕上掛一個對話框。

+1

重複的http://stackoverflow.com/questions/38759020/get-uri-of-saved-audio-in-onresultsbundle-result-in-speech-recognitionlistener –

+0

@尼克拉伊Shmyrev - 好的,但這也是一個沒有答案發布! –

+1

這是不可能的,但它應該是。 – brandall

回答

0

我已經在CLOUD SPEECH API的幫助下成功完成了這個任務。 你可以在google speech找到它的演示。

API可識別80多種語言和變體,以支持您的全球用戶羣。您可以將用戶的文本抄錄到應用程序的麥克風,通過語音啓用命令和控制,或轉錄音頻文件以及其他許多用例。識別在請求中上傳的音頻 ,並通過Google使用的相同技術爲您的音頻存儲集成 Google雲端存儲。

它使用音頻緩衝區在Google Speech API的幫助下轉錄數據。我已經使用這個緩衝區來存儲音頻錄音AudioRecorder的幫助。

因此,通過本演示,我們可以將用戶的語音與錄音並行錄製。

+1

這是一個測試版本,不推薦用於生產。 –