文件名称:高通camera预览拍照流程1
文件大小:872KB
文件格式:PDF
更新时间:2020-12-31 04:43:04
高通camera
当指定了Camera的预览类,并开始预览之后,就可以通过takePicture()方法进行拍照 了。它将以异步的方式从Camera中获取图像,具有多个回调类作为参数,并且都可以为 null,下面分别介绍这些参数的意义: • shutter:在按下快门的时候回调,这里可以播放一段声音。 • raw:从Camera获取到未经处理的图像。 • postview:从Camera获取一个快速预览的图片,不是所有设备都支持。 • jpeg:从Camera获取到一个经过压缩的jpeg图片。 虽然raw、postview、jpeg都是Camera.PictureCallback回调,但是一般我们只需要 获取jpeg,其他传null即可,Camera.PictureCallback里需要实现一个方法 onPictureTaken(byte[] data,Camera camera),data及为图像数据。值得注意的是,一般 taskPicture()方法拍照完成之后,SurfaceView都会停留在拍照的瞬间,需要重新调用 startPreview()才会继续预览。 如果直接使用taskPicture()进行拍照的话,Camera是不会进行自动对焦的,这里需 要使用Camera.autoFocus()方法进行对焦,它传递一个Camera.AutoFocusCallback参 数,用于自动对焦完成后回调,一般会在它对焦完成在进行taskPicture()拍照。