package com.example.camera;import java.io.IOException;import android.app.Activity;import android.media.MediaRecorder;import android.os.Bundle;import android.view.SurfaceHolder;import android.view.SurfaceView;public class MainActivity extends Activity implements SurfaceHolder.Callback {private SurfaceView mSurfaceview = null; // SurfaceView对象:(视图组件)视频显示private SurfaceHolder mSurfaceHolder = null; // SurfaceHolder对象:(抽象接口)SurfaceView支持类private MediaRecorder mediarecorder;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);mSurfaceview = (SurfaceView) findViewById(R.id.surfaceview);mSurfaceHolder = mSurfaceview.getHolder(); // 绑定SurfaceView,取得SurfaceHolder对象mSurfaceHolder.addCallback(this); // SurfaceHolder加入回调接口mSurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);// 設置顯示器類型,setType必须设置}@Overridepublic void surfaceChanged(SurfaceHolder holder, int format, int width,int height) {}@Overrideprotected void onPause() {super.onPause();mediarecorder.stop();mediarecorder.release();}@Overridepublic void surfaceCreated(SurfaceHolder holder) {mediarecorder = new MediaRecorder();// 创建mediarecorder对象// 设置录制视频源为Camera(相机)mediarecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);// 设置录制完成后视频的封装格式THREE_GPP为3gp.MPEG_4为mp4mediarecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);// 设置录制的视频编码h263 h264mediarecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);// 设置视频录制的分辨率。必须放在设置编码和格式的后面,否则报错// mediarecorder.setVideoSize(176, 144);// 设置录制的视频帧率。必须放在设置编码和格式的后面,否则报错mediarecorder.setVideoFrameRate(20);mediarecorder.setPreviewDisplay(mSurfaceHolder.getSurface());// 设置视频文件输出的路径mediarecorder.setOutputFile("/sdcard/love.3gp");try {mediarecorder.prepare();mediarecorder.start();} catch (IllegalStateException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}@Overridepublic void surfaceDestroyed(SurfaceHolder holder) {}}
 参考:http://blog.sina.com.cn/s/blog_972577b3010108p1.html

更多相关文章

  1. Android_在线视频播放器
  2. android 在线视频播放器实现方法
  3. android 视频通话 项目 源码
  4. android 用VideoView播放本地视频文件
  5. android页面间传递对象
  6. android 播放视频保存的一些网页
  7. android录制视频流程
  8. 视频聊天系统源码Android 播放视频
  9. Android O版本Call对象解析

随机推荐

  1. eclipse 和 Android(安卓)studio:SHA1和MD
  2. Android(安卓)4.2 Bluetooth 分析总结(一)
  3. 文章关键字 ‘nodpi’
  4. Android中使用indexablerecyclerview以及
  5. 浅谈Android系统进程间通信(IPC)机制Binder
  6. 虎牙 安卓开发面试 问题整理(2018.3.6)
  7. Android录音文件在IOS上播放不出来的问题
  8. Android Emulator默认电话号码修改和MCC
  9. android basic
  10. Android Studio导入(import)工程时常见错