Wie anhalten/fortsetzen der Aufnahme erstellt, mit mediarecorder?

Ich versuche zum anhalten der Aufnahme auf einen eingehenden Anruf an-und später wieder aufnehmen. ich bin mit dem andriod mediarecorder und versuchen zu erfassen MPEG4. Ich habe versucht, pause/resume mit dem zurücksetzen/stoppen einer Aufnahme, und starten Sie es mit der setOutputFile(fd), fd die filedescriptor von der audio-Datei, die wurde gestoppt/angehalten und gehofft, es würde anfügen, aber ich hatte kein Glück. Gibt es eine Möglichkeit, dies zu erreichen oder Anhängen zwei Aufnahmen oder sollte ich aufgeben, auf mediarecorder.

code:

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() Stoppt die Aufnahme doch fortsetzen, scheitert mit der Meldung start failed.

InformationsquelleAutor Pannu | 2011-11-04
Schreibe einen Kommentar