Android录制视频的流程,前面初始化和拍照流程一样,参考拍照流程中的First,Second;

Third:初始化MediaRecorder

MediaRecorder=newMediaRecorder();

//Step1:UnlockandsetcameratoMediaRecorder

//mCamera.unLock();

//mMediaRecorder.setCamera(mCamera);

以上可用于设置前后摄像头

//Step2:Setsources

mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);

mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);

//Step3:SetaCamcorderProfile

mMediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_LOW));

//Step4:Setoutputfile

mMediaRecorder.setOutputFile(filePath);

//Step5:Setthepreviewoutput.

mMediaRecorder.setPreviewDisplay(mHolder.getSurface());

此时如果surface创建成功,就可以:

mMediaRecorder.prepare();

mMediaRecorder.start();

在录制中途失败或者结束的时候需要释放MediaRecorder,并且释放摄像头:

mMediaRecorder.stop();

mMediaRecorder.reset();

mMediaRecorder.release();

mMediaRecorder=null;

在上述的Step3中,如果需要设置不同分辨率参数进行拍照,就需要做改动,Step3中应改成如下:

mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);

mMediaRecorder.setVideoSize(width,height);

//mMediaRecorder.setVideoFrameRate(3);

mMediaRecorder.setVideoEncorder(MediaRecorder.VideoEncorder.H264);

mMediaRecorder.setAudioEncorder(MediaRecorder.AudioEncorder.AMR_NB);

早在在录制视频的过程中,如果设置的是不支持的分辨率或者Surface未创建成功,将会产生startfailed异常,即在调用mMediaRecorder.start()时。

更多相关文章

  1. Android的SIM卡名片导入流程
  2. android 调用相机拍照 并缩放切割图片
  3. Android(安卓)Launcher启动流程
  4. 我的Android进阶之旅------>Android拍照小例子
  5. Android客户端向服务器端发送数据的流程(1)
  6. Android开机启动流程初探
  7. Android显示设备管理以及转屏流程
  8. Android源码阅读分析:ActivityManagerService分析(一)——启动流程
  9. Android(安卓)Camera

随机推荐

  1. Android计算器布局
  2. android常用对话框封装
  3. android ToggleButton
  4. Android Accessibility(辅助功能) 学习
  5. android秒表计时代码
  6. android多点触摸缩放图片
  7. android slidemenu
  8. 如何自学 Android 编程-----整理stormzha
  9. Android StatusBar
  10. amlogic 编译 android