Android(安卓)系统中camera中 自动对焦的解决方案
16lz
2021-01-24
关于camera中 自动对焦的解决方案 和 框架流程,在此总结一下。
freescale平台的Android Camera很多功能都没有实现;驱动里面也是;HAL层也是;因为工作需要;添加了自动对焦和白平衡功能;测试OK;在这里把主要修改的地方写出来;希望以后遇到的朋友可以少走弯路;
首先是Android HAL层:
android/hardware/imx/mx6/libcamera/CameraModule.cpp =>这个文件和再往上层的代码都不用修改;作为你看Camera代码的开始;android/hardware/imx/mx6/libcamera/CameraHal.cpp =>主要修改这个文件;很多功能都是没有实现;android/hardware/imx/mx6/libcamera/CaptureDeviceInterface.cpp =>是调用V4L2层的;所有Camera V4L2设备都继承它;要改;android/hardware/imx/mx6/libcamera/V4l2CapDeviceBase.cpp =>这个文件是你要添加功能V4L2具体实现;要改;android/hardware/imx/mx6/libcamera/V4l2CsiDevice.cpp =>这个文件不需要修改;
Android kernel driver层:
kernel/drivers/media/video/mxc/capture/mxc_v4l2_capture.c =>需要修改;因为V4L2协议传下来的命令首先到了这个文件;等于是Camera master设备;kernel/drivers/media/video/mxc/capture/ov5640.c =>这个文件就是具体的驱动代码;实现你接收的V4L2命令然后去控制Camera做什么;
Android camera HAL四个callback
其中包括:
camera_notify_callback
用来传递一些消息: 如快门消息,自动对焦完成消息,出错消息,拍照编码结束等
参数@msg_type可以是:
CAMERA_MSG_ERRORCAMERA_MSG_SHUTTERCAMERA_MSG_FOCUSCAMERA_MSG_ZOOMCAMERA_MSG_FOCUS_MOVE
Android Camera框架
Camera从驱动到应用
更多相关文章
- Android(安卓)仿写微信里的标签功能
- AdFreeDetector 开源了
- Android通过AIDL实现接听电话、挂断电话操作 | 拨打电话
- android第一天学习基本配置与安装过程和启动
- 六、ANDROID资源文件
- Android(安卓)DiskLruCache完全解析,硬盘缓存的最佳方案
- 新浪微博SDK在Eclipse引入
- Android自定义背景的设置方法
- Android中OkHttp的使用