我正在尝试暂停对来电的录音,稍后再恢复。我正在使用 andriod mediarecorder
并尝试以 MPEG4
格式进行录制。我尝试通过重置/停止录音来暂停/恢复,并使用 setOutputFile(fd)
启动它,fd
是音频文件的 filedescriptor
那被停止/暂停并希望它会 append 但我没有运气。有没有办法实现这个或 append 两个录音,或者我应该放弃 mediarecorder
。
代码:
private MediaRecorder media_recorder;
private String file_path = null;
public void startRecording(path)
{
file_path = path
media_recorder= new MediaRecorder();
media_recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
media_recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
media_recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
media_recorder.setOputputFile(path);
media_recorder.prepare();
}
public void pauseRecording()
{
media_recorder.stop();
media_recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
media_recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
media_recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
FileOutputStream paused_file = new FileOutputStream(file_path);
media_recorder.setOutputFile(paused_file.getFD());
}
public void resumeRecording()
{
media_recorder.prepare();
media_recorder.start();
}
pauseRecording()
停止录制但恢复失败并显示消息 start failed
。
最佳答案
你的问题的简单答案是不,你不能
一旦开始录制,唯一可能的操作就是停止和重置。
因此,尝试在 Stop 后将 Call 保存到 SDCard,然后再次启动 Fresh Record 并 Stop it。 最后将两个音频文件合并为一个音频文件
。
将音频录制为 .wav 文件和 Combine using this format .
关于java - 如何暂停/恢复使用 mediarecorder 创建的录音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8007682/