Android的SpeechRecognizer类本身不提供录音功能,它主要用于识别已经录制好的音频。然而,你可以结合MediaRecorder类来实现录音功能,并将录音文件传递给SpeechRecognizer进行语音识别。以下是使用MediaRecorder进行录音的步骤:
添加录音权限:在AndroidManifest.xml文件中添加录音权限。
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
创建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进行语音识别。