📸 Camera HAL 适配全攻略 30 章 · 从入门到实战

📚 完整目录 v3.2
01
Android Camera 架构 HAL 层定位 HAL1 vs HAL3 加载流程
02
Linux 环境 AOSP 编译 代码路径 交叉编译链
03
camera3_device_t callback_ops stream_t stream_buffer
04
open() 实现 initialize() configure_streams metadata 初始化
05
上报摄像头信息 static_info camera_info 前后摄识别
06
Metadata 基础 Tag 分类 静态/动态/控制 常用 Tag
07
PREVIEW/STILL/VIDEO 分辨率协商 复用策略 Buffer 管理
08
Capture Request 模板 TEMPLATE Result 回调 Frame Number
09
Gralloc 分配 生命周期 Dequeue/Enqueue 状态机
10
启动流程 Surface 绑定 帧率控制 Preview 回调
11
Still Capture JPEG 编码 Exif 信息 拍照回调
12
Video Stream 帧率控制 并发 Preview Recording 回调
13
ZSL 原理 环形 Buffer 切换逻辑 调试经验
14
HDR 原理 多帧合成 Burst Capture 参数调优
15
Face Detection Metadata 上报 场景算法 性能优化
16
AUTO/ON/OFF/TORCH Flash 与 AE Torch 实现 调试
17
CAF/AUTO/MACRO AF 状态机 Trigger 机制 Focus Distance
18
AE/AWB/AF 框架 参数传递 算法交互 问题调试
19
驱动接口 MIPI CSI 初始化序列 VSYNC
20
ISP Pipeline 参数调优 Tuning 文件 ISP 与 HAL
21
内存优化 CPU/GPU 负载 帧率稳定 功耗优化
22
CTS 概览 Camera CTS 失败原因 VTS 测试
23
ANR 分析 Crash 分析 内存泄漏 死锁排查
24
双摄/三摄 主副摄切换 多摄同步 Metadata 管理
25
UVC 协议 USB 枚举 UVC 桥接 兼容性
26
Virtual Camera V4L2 模拟 Virtual HAL 测试框架
27
logcat 技巧 dumpsys media.camera Systrace Bugreport
28
Vendor Tag 定义 注册流程 使用方式 兼容性
29
HAL 版本兼容 VINTF 配置 Seamless Upgrade 回滚策略
30
适配问题汇总 项目经验 最佳实践 未来趋势