Как приостановить / возобновить запись, созданную с помощью медиа-рекордера?
Я пытаюсь приостановить запись входящего звонка и возобновить его позже. я использую андриод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
.