Android Camera porting(HAL层移植)
来源:互联网 发布:js class 私有属性 编辑:程序博客网 时间:2024/05/09 23:45
Android 相机
简要:
- 编译libcamera.so库
- 时序框图
- 接口
下图说明了相机子系统的结构:
说明:在多媒体框架部分,android 2.3系统stagefright取代了opencore。
编译一个libcamera.so库
为了实现一个相机驱动,需要实现定义在 CameraHardwareInterface.h的接口并编译成动态链接库。必须命名这个动态链接库为libcamera.so,这样在anroid运行时(runtime)才能从/system/lib中被加载。建议将camera源码和Android.mk放在这个目录下
vendor/acme/chipset_or_board/libcamera/
。
下面Android.mk存根文件,确保libcamera 编译时能链接到相应的库:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libcamera
LOCAL_SHARED_LIBRARIES := \
libutils \
librpc \
liblog
LOCAL_SRC_FILES += MyCameraHardware.cpp
LOCAL_CFLAGS +=
LOCAL_C_INCLUDES +=
LOCAL_STATIC_LIBRARIES += \
libcamera-common \
libclock-rpc \
libcommondefs-rpc
include $(BUILD_SHARED_LIBRARY)
一个预览时序图和拍照时序图。
预览
下面框图说明了相机预览时必要的函数调用和动作时序图:
照相
下面框图说明了相机照相时必要的函数调用和动作时序图:
接口
相机操作的函数接口基本上定义参考CameraHardwareInteface.h,这里面的接口需要自己实现。可参考例子。
补充一下:
android源代码:在device/目录下有不少设备HAL部分的代码,如在samsung/crepo/libcamera/路径下就有camera的实现,这个是Nexus S
前后摄像头的HAL部分的代码,可以参考,然后调试自己的代码。
- Android Camera porting(HAL层移植)
- Android Camera porting(HAL层移植)
- Android Camera porting(HAL层移植)
- Android camera子系统HAL层介绍集锦
- Android camera子系统HAL层介绍集锦
- Android系统GPS HAL层移植笔记
- Android开发之fsl在HAL层Camera的实现
- Android开发之fsl在HAL层Camera的实现
- android4.0 camera hal 移植
- android4.0 camera hal 移植
- android4.0 camera hal 移植
- android camera HAL
- Android Camera HAL浅析
- Android Camera HAL浅析
- android camera HAL
- Android Camera HAL浅析
- android camera(hal)
- Android Camera HAL浅析
- 互联网大数据下的精准服务与可穿戴设备
- 追逐自己的梦想----------辅助制作第二课:人物气功加点分析
- Android Layout的layout_height等属性为什么有时会不起作用?
- linux系统文件流、缓冲及描述符与进程间关系详解
- Android中观看sqlite数据库最直观的工具SQLite Expert
- Android Camera porting(HAL层移植)
- jdbc的翻页技术
- Handler 实现简单的计时器
- Selenium 不支持高版本firefox
- 从google 代码仓库repo sync Android4.0 源代码
- Dtrace 资源库 URL 大全
- 将matlab原始代码的ROC曲线张贴出来供大家学习
- [水题][第一阶段-回归水题][HDOJ-2018]母牛的故事
- 黑马程序员_java GUI 三大布局使用