1. 开始录音
private void startRecord() {
mediaRecorder = new MediaRecorder();
// 第1步:设置音频来源(MIC表示麦克风)
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
// 第2步:设置音频输出格式(默认的输出格式)
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
// 第3步:设置音频编码方式(默认的编码方式)
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
// 创建一个临时的音频输出文件
File audioFile;
try {
// audioFile = File.createTempFile("record_", ".amr");
audioFile = new File(Environment.getExternalStorageDirectory(),
"voive:" + System.currentTimeMillis());
// 第4步:指定音频输出文件
mediaRecorder.setOutputFile(audioFile.getAbsolutePath());
// 第5步:调用prepare方法
mediaRecorder.prepare();
// 第6步:调用start方法开始录音
mediaRecorder.start();
ToastUtil.show(this, "开始录音");
isVoice = true;
} catch (IOException e) {
e.printStackTrace();
}
}
2.结束录音
private void stopRecord() {
isVoice = false;
ToastUtil.show(this, "停止录音");
if (mediaRecorder != null) {
mediaRecorder.stop();
mediaRecorder.release();
mediaRecorder = null;
}
}