我想制作一个语音识别器应用程序,用于转录用户的语音。 在执行时,我不需要任何对话框,因此startActivityForResult with recognizerIntent
不在选项之内。 (我知道如果使用这种方法,我可以得到音频)
我为此使用SpeechRecognizer并调用startListening收听用户的音频。我在onResults中获得了非常准确的结果。
现在,我还需要设备中sdcard中存储的用户音频。为此,我尝试了MediaRecorder和AudioRecord,但是都没有成功。我总是在onError的RecognitionListener中收到网络错误。无论如何我都找不到如何解决这个问题的方法。我也曾尝试从onBufferReceived获取数据,但徒劳。
如果有人可以对此有所启示,那将是很棒的。
[编辑]
伙计们,这不是record/save audio from voice recognition intent的副本,它略有不同。您给出的答案是针对Google Keep的。 Keep使用对话框获取数据。我不需要在屏幕上悬挂对话框。
最佳答案
我已经在CLOUD SPEECH API的帮助下成功完成了此任务。
您可以通过google speech找到它的演示。
它使用音频缓冲区在Google Speech API的帮助下转录数据。我已使用此缓冲区在AudioRecorder的帮助下存储音频记录。
因此,通过此演示,我们可以与Audio Recording并行录制用户的语音。
关于android - 带有Android录音功能的SpeechRecognizer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39490119/