自动重置视频录制Android

时间:2012-09-10 10:36:31

标签: android save mediarecorder

我正在开发一个应用程序,我需要在预定义的按钮上点击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秒完成后我应该重置录像机的事件。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。 也许这个答案对某些人有帮助。

使用以下监听器

recorder.setOnInfoListener(new 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);  
         } 
         } 

欢呼声。