如何暂停/恢复使用mediarecorder创建的记录



我正在尝试暂停来电录音,稍后再继续。我正在使用安卓mediarecorder,并试图在MPEG4记录。我尝试暂停/恢复重置/停止录制并使用setOutputFile(fd)启动它,fd是停止/暂停的音频文件的filedescriptor,并希望它会附加,但我没有运气。是否有一种方法来实现这一点或附加两个录音,或者我应该放弃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 .

对你的问题的简单回答是NO YOU CAN'T

Once you are recording the only possible actions are stop and reset.

所以尝试保存你的呼叫到存储卡后,你停止,然后再次开始刷新记录和停止它。Finally Combine both Audio File into one Audio file .

将音频记录为。wav文件并使用此格式组合。

最新更新