Camera HAL · 课程目录
📘 30 章
从零到量产
01
Camera 行业全景
DSLR→手机 · 技术演进 · 主流架构(高通/MTK/展锐) · HAL位置
02
Android Camera 系统架构
App→Kernel 数据流 · CameraService/HAL/V4L2 · Treble影响
03
开发环境搭建
Ubuntu · AOSP编译 · 模拟器/真机 · ADB & Logcat
04
HAL 接口定义 (HIDL/AIDL)
HIDL vs AIDL · Provider/Device/Session · .hal编写
05
Camera HAL 启动流程
Provider注册 · 服务启动 · 绑定Service · 设备枚举
06
Camera 设备打开与配置
open() · configureStreams() · Stream参数(format/resolution/usage)
07
Preview 数据流
Request/Result模型 · processCaptureRequest · Buffer流转 · Surface
08
拍照流程
Single/Burst Shot · JPEG/EXIF · ZSL零延时拍照
09
Video 录制
VideoStream配置 · 编码器交互 · 帧率/Timestamp · 慢动作
10
Metadata 系统
CameraMetadata结构 · 静态/动态/控制 · Tag解析 · 自定义
11
3A 算法集成
AE/AF/AWB原理 · HAL回调 · 算法库对接
12
ISP 与图像处理
ISP Pipeline · RAW处理 · YUV/JPEG · HDR多帧合成
13
多摄像头支持
多摄同步 · 主/广/长切换 · Bokeh虚化 · 深度图
14
Face Detection & AI 场景
人脸检测实现 · AI场景识别 · NPU/DSP交互
15
闪光灯与对焦辅助
Flash控制(Torch/Flash) · AF Assist Light · 激光/ToF
16
性能优化
Memory(ION/DMA-BUF) · CPU/GPU负载 · Pipeline延迟 · ANR/掉帧
17
功耗优化
功耗模型 · DVFS/时钟 · 低功耗预览 · 场景化调优
18
稳定性与异常处理
HAL Crash · Watchdog · Buffer Leak · 异常恢复
19
兼容性测试 (CTS/VTS)
CTS/VTS简介 · Camera测试项 · 失败修复 · 自动化脚本
20
HAL 层调试技巧
Log分级/动态开关 · Dump接口 · Sysfs/Debugfs · Trace/Perfetto
21
Vendor 扩展接口
OEM自定义API · Vendor Tag · 扩展模式(夜景/专业)
22
Camera 安全
权限模型 · 权限管控 · Secure Camera · DRM/内容保护
23
虚拟摄像头开发
Virtual Camera原理 · V4L2 Loopback · Fake Camera
24
External Camera 支持
USB Camera(UVC) · OTG HAL · 热插拔处理
25
Camera 与多媒体框架
MediaCodec交互 · SurfaceView/TextureView · 编解码同步
26
Android 14/15 新特性
框架变化 · Ultra HDR · Stream Use Case · 麦克风同步
27
项目实战:需求分析
PRD→HAL需求 · 硬件评估 · 架构设计文档
28
项目实战:编码实现
搭建HAL工程 · Preview/Photo/Video · 集成3A & ISP
29
项目实战:调试与优化
性能Profiling · 功耗测试 · 稳定性压测 · CTS修复
30
项目实战:量产与维护
工厂测试 · 产线校准 · OTA兼容 · 线上问题热修复