Wystąpiło bardzo dziwne zachowanie: czasami mój pamięć multimediów ulega awarii z błędem "Zatrzymaj się nie powiodło", a czasami działa poprawnie. Czy istnieje moja wina lub jest to błąd systemu? Nie mogę dostać tego, co jest nie tak.Zatrzymanie odtwarzania multimediów dla systemu Android nie powiodło się
private void stopRecording(){
ticker.cancel();
ticker.purge();
recorder.stop();
startBtn.setText("Start");
recordInProcess = false;
markList = locWriteTask.getMarkArray();
mCamera.lock();
recorder.release();
}
private void startRecording(){
startBtn.setText("Stop");
recordInProcess = true;
recorder = new MediaRecorder();
mCamera.unlock();
recorder.setCamera(mCamera);
recorder.setPreviewDisplay(mSurfaceHolder.getSurface());
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
recorder.setMaxDuration((int) 10000000);
recorder.setVideoSize(320, 240);
recorder.setVideoFrameRate(15);
recorder.setOutputFile(FULL_PATH_TO_LOCAL_FILE + counter + MP4);
try{
recorder.prepare();
} catch (Exception e){
finish();
}
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, ll);
ticker = new Timer();
locWriteTask = new WriteTimeLocationTimerTask(ll);
ticker.schedule(locWriteTask, 0, DELAY);
recorder.start();
}
Jak mogę sprawdzić, czy MediaRecorder jest w stanie nagrywania? – Kalpesh
@Kalpesh Api MediaRecorder nie ma przepisu, aby niestety zapytać o jego stan. – Bhargav