2012-09-10 6 views
0

나는 미리 정의 된 버튼 클릭으로 비디오를 녹화해야하는 어플리케이션에서 15 초를 말합니다. 15 초 후 수동 중재없이 자동으로 MediaRecorder를 재설정하고 싶습니다. 내 코드는 여기에 있습니다.자동 재설정 비디오 녹화 안드로이드

public void initMediaRecorder(){ 

mRecorder = new MediaRecorder(); 

mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
mRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); 
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
mRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H263); 
mRecorder.setPreviewDisplay(mHolder.getSurface()); 
mRecorder.setMaxDuration(15000); 
mRecorder.setOutputfile("blahblah On SD card") 
mRecorder.setOutputFile(mOutputFile); 

} 

녹음이 완료되지만 15 초 후 UI가 정지되고 수동으로 레코더를 재설정해야합니다. 15 초 후에 레코더를 재설정해야하는 이벤트를 알아야합니다.

+0

실마리가 될 것입니다. – kendrelaxman

답변

0

해결책을 찾았습니다. 아마도이 대답이 도움이 될 것입니다.

은 다음과 청취자에게

recorder.setOnInfoListener (새 medialistener())를 사용;

class medialistener implements MediaRecorder.OnInfoListener {  
     public void onInfo(MediaRecorder recorder, int what, int extra) 
     { 
      if(what==MediaRecorder.MEDIA_RECORDER_INFO_MAX_DURATION_REACHED) 
      { 

      } 

     // Log.i("video test", "Video Info: "+what+", "+extra); 
     } 
     } 

건배.