android camera学习笔记

camera 实例获取?

camera预览?

camera拍照?

camera与surfaceview怎么关联?

1.获取camera 实例:myCamera=Camera.open();

2.获取camera的属性:Camera.Parameters myParam = myCamera.getParameters(); 

3.可对parameters进行设置: 

 myParam.setPictureFormat(PixelFormat.JPEG);  
 myParam.setPictureSize(1280, 960);  
 myParam.setPreviewSize(960, 720);                            
 myCamera.setDisplayOrientation(90);    
 myParam.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);  
 myCamera.setParameters(myParam); 
4.把camera与SurfaceView关联起来,

  mPreviewSV = (SurfaceView)findViewById(R.id.previewSV);  
  mySurfaceHolder = mPreviewSV.getHolder();  
  mySurfaceHolder.setFormat(PixelFormat.TRANSLUCENT);
  mySurfaceHolder.addCallback(this);  
  mySurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); 
  myCamera.setPreviewDisplay(mySurfaceHolder);

5.开始预览:myCamera.startPreview();

6.拍照:myCamera.takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback)

       关于takePicture (Camera.ShutterCallback shutter, Camera.PictureCallback raw, Camera.PictureCallback postview, Camera.PictureCallback jpeg)

       会传入四个回调函数:1.shutter,在拍照捕获到图像后调用,可在此播放拍照的声音;

                                               2.raw,未压缩图片时调用,可对图像的原始数据进行处理;

                                                3.postview,在图片进行伸展时调用;

                                                4.jpeg,对压缩图片进行处理时调用,如对压缩图片进行出来等。

7.拍照成功后会关闭预览,如果要继续拍照需再次打开预览:myCamera.startPreview()

8.停止预览:myCamera.stopPreview();

9.在使用完camera后,必须释放camera:myCamera. release() 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值