Android的SpeechRecognizer类本身不提供录音功能,它主要用于识别已经录制好的音频。然而,你可以结合MediaRecorder类来实现录音功能,并将录音文件传递给SpeechRecognizer进行语音识别。以下是使用MediaRecorder进行录音的步骤:
使用MediaRecorder进行录音的步骤
-
添加录音权限:在AndroidManifest.xml文件中添加录音权限。
-
创建MediaRecorder实例:在Activity中创建MediaRecorder实例,并配置录音参数。
MediaRecorder mediaRecorder = new MediaRecorder(); mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_WB);
-
准备录音:调用
prepare()
方法准备录音。try { mediaRecorder.prepare(); } catch (IOException e) { e.printStackTrace(); }
-
开始录音:调用
start()
方法开始录音。mediaRecorder.start();
-
停止录音:当录音完成后,调用
stop()
方法停止录音。mediaRecorder.stop();
-
释放资源:在Activity的
onDestroy()
方法中释放MediaRecorder资源。if (mediaRecorder != null) { mediaRecorder.release(); mediaRecorder = null; }
通过上述步骤,你可以实现录音功能,并将录音文件传递给SpeechRecognizer进行语音识别。