Android视频录制_SurfaceView录像拍摄视频Demo下载
2015-08-31 13:24:48  By: dwtedx

记得在前面几天分享了一个调用Android默认相机摄像的Demo、其实那个体验非常好、但唯一不理想的就是不能设置视频的分辨率、导致视频很大、平均1秒要消耗2M空间

因为这个视频是要上传服务器的、10S的视频足足有20M、这样肯定不行、所以就想的自己用SurfaceView自定义一个视频录相机、现在这个相机已经基本上可以用了、分辨率是176 * 144(可自定义)、这个样子10S的视频大概也就1M多一点、分享一下、希望对一些做视频的哥们有用、效果图如下

android 视频录制


开始录制代码

try{
    File videoFile = new File(Environment.getExternalStorageDirectory(), System.currentTimeMillis()  ".mp4");
    mediaRecorder = new MediaRecorder();
    mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
    mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
    mediaRecorder.setVideoSize(320, 240);
    mediaRecorder.setVideoFrameRate(5);
    mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
    mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
    mediaRecorder.setOutputFile(videoFile.getAbsolutePath());
    mediaRecorder.setPreviewDisplay(surfaceView.getHolder().getSurface());
    mediaRecorder.prepare();
    mediaRecorder.start();
}catch (Exception e) {
    e.printStackTrace();
}
recordbutton.setEnabled(false);
stopbutton.setEnabled(true);


停止录制代码

if(mediaRecorder!=null){
    mediaRecorder.stop();
    mediaRecorder.release();
    mediaRecorder = null;
}
recordbutton.setEnabled(true);
stopbutton.setEnabled(false);


最后给贴上Demo的源代码、希望对大家有用、有兴趣的哥们可以下载看看

源代码下载链接: http://dwtedx.com/download.html?bdkey=s/1kT5usrP 密码: gzc3

若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+