LogoAndroid 课程
LogoAndroid 课程

当前专题

Android Camera2 API
01. Android Camera 架构介绍02. Android Camera2 API 概述03. Android Camera2 API Open/Close Camera04. Android Camera2 API GeekCamera2 介绍05. Android Camera2 API Open、Close Camera代码实现06. Android Camera2 API Camera Hardware Level详解07. Android Camera2 API REQUEST_AVAILABLE_CAPABILITIES详解08. Android Camera2 API StreamConfigurationMap详解一09. Android Camera2 API StreamConfigurationMap详解二10. Android Camera2 API StreamConfigurationMap实战一11. Android Camera2 API StreamConfigurationMap实战二12. Android Camera2 API 为什么需要OutputConfiguration13. Android Camera2 API OutputConfiguration API详解14. Android Camera2 API Surface Sharing实战15. Android Camera2 API Deferred Surface实战16. Android Camera2 API Reprocessable Capture Session详解一17. Android Camera2 API Reprocessable Capture Session详解二18. Android Camera2 API实战 App如何实现ZSL功能19. Android Camera2 API SessionConfiguration详解20. Android Camera2 API createCaptureSession详解21. Android Camera2 API Session Parameter实战22. Android Camera2 API CaptureRequest详解23. Android Camera2 API VendorTag实战24. Android Camera2 API 获取Physical Camera数据流25. Android Camera2 API CameraCaptureSession详解26. Android Camera2 API CameraCaptureSession.CaptureCallback详解27. Android Camera2 API 连拍实战28. Android Camera2 API SlowMotion实战29. Android Camera2 API CaptureResult详解30. Android Camera2 API AE自动曝光一31. Android Camera2 API AE自动曝光二32. Android Camera2 API AE自动曝光实战33. Android Camera2 API 手动曝光34. Android Camera2 API 手动曝光实战35. Android Camera2 API Flash闪光灯控制36. Android Camera2 API 拍照打闪实战37. Android Camera2 API 通过CropRegion控制Zoom缩放38. Android Camera2 API 通过Zoom Ratio控制Zoom缩放39. Android Camera2 API Digital Zoom缩放实战40. Android Camera2 API Touch AE实战41. Android Camera2 API AF自动对焦一42. Android Camera2 API AF自动对焦二43. Android Camera2 API AF自动对焦实战44. Android Camera2 API 手动对焦实战45. Android Camera2 API AWB自动白平衡46. Android Camera2 API AWB自动白平衡实战47. Android Camera2 API FD人脸检测48. Android 13 Camera2 New APIs
Camera48 讲

Android Camera2 API

从系统架构到 API 调用顺序,建立完整的 Camera2 心智模型。

课程目录

专题首页负责总览与目录,课时页负责正文与视频权限播放。

第 1 讲

01. Android Camera 架构介绍

我们介绍 Android Camera 架构,站在更高的层次了解现在的 Camera HAL3 架构的由来,以及为何要设计成这样。

第 2 讲

02. Android Camera2 API 概述

介绍 Camera2 API 的核心组件,以及它们如何协同完成相机的各类流程。

第 3 讲

03. Android Camera2 API Open/Close Camera

介绍 Camera2 API 的 Open/Close Camera 部分,理解逻辑相机、物理相机与相机打开关闭流程。

第 4 讲

04. Android Camera2 API GeekCamera2 介绍

介绍 Camera2 API 专题的 GeekCamera2 部分,包括代码下载、编译方式与架构简介。

第 5 讲

05. Android Camera2 API Open、Close Camera代码实现

介绍 Camera2 API 的 Open、Close Camera 代码实现,包括枚举 Camera 数量、判断 Facing、Logical MultiCamera,以及 Open/Close Camera 流程代码。

第 6 讲

06. Android Camera2 API Camera Hardware Level详解

介绍 Camera2 API 的 Camera Hardware Level,包括能力等级划分及判断设备是否支持某个 Hardware Level 的代码实现。

第 7 讲

07. Android Camera2 API REQUEST_AVAILABLE_CAPABILITIES详解

介绍 Camera2 API 的 REQUEST_AVAILABLE_CAPABILITIES,包括各类 Capability 的含义、典型要求,以及判断某个 Camera Feature 是否支持的方法。

第 8 讲

08. Android Camera2 API StreamConfigurationMap详解一

介绍 Camera2 API 的 StreamConfigurationMap,包括概述、输出流配置、Flexible Consumer、Frame Duration,以及 ImageFormat 与 HAL Pixel Format 的对应关系。

第 9 讲

09. Android Camera2 API StreamConfigurationMap详解二

介绍 StreamConfigurationMap 的高帧率流配置、输入流配置与高分辨率流配置,以及 Reprocessing 相关元数据。

第 10 讲

10. Android Camera2 API StreamConfigurationMap实战一

介绍如何使用 StreamConfigurationMap 获取预览 Size 与拍照 JPEG Size,并结合 GeekCamera2 代码分析选型逻辑。

第 11 讲

11. Android Camera2 API StreamConfigurationMap实战二

介绍如何使用 StreamConfigurationMap 获取录像 Size,包括正常帧率与高帧率录像 Size 的筛选逻辑。

第 12 讲

12. Android Camera2 API 为什么需要OutputConfiguration

介绍为什么 Camera2 API 需要引入 OutputConfiguration,以及 Deferred Surface、Surface Group 与 Surface Sharing 的用途和更新流程。

第 13 讲

13. Android Camera2 API OutputConfiguration API详解

介绍 OutputConfiguration 的核心 API,包括 Surface Sharing、Physical Camera ID、Sensor Pixel Mode 与 MultiResolution 输出。

第 14 讲

14. Android Camera2 API Surface Sharing实战

介绍如何在创建 Camera Capture Session 前后配置 Surface Sharing,并结合代码分析 Add Share Surface 的两种时机。

第 15 讲

15. Android Camera2 API Deferred Surface实战

介绍 Deferred Surface 的使用方式,包括通过 Deferred 方式创建 OutputConfiguration,以及 addSurface 和 finalizeOutputConfigurations 的调用流程。

第 16 讲

16. Android Camera2 API Reprocessable Capture Session详解一

介绍 Reprocessable Capture Session 的架构、处理流程,以及不同硬件等级下的 Reprocessing guaranteed stream configurations。

第 17 讲

17. Android Camera2 API Reprocessable Capture Session详解二

介绍 InputConfiguration、Reprocessing 相关 CameraDevice 和 CameraCaptureSession API,以及 ImageWriter 的使用方式。

第 18 讲

18. Android Camera2 API实战 App如何实现ZSL功能

介绍 GeekCamera2 中如何基于 Reprocess 能力完成 ZSL 检测、输入配置与拍照请求创建。

第 19 讲

19. Android Camera2 API SessionConfiguration详解

介绍为什么要引入 SessionConfiguration,以及它如何统一 Session Type、输出流、输入流与 Session Parameter。

第 20 讲

20. Android Camera2 API createCaptureSession详解

介绍 createCaptureSession(SessionConfiguration) 的创建约束、Surface 选型、Regular 流配置表与高帧率会话限制。

第 21 讲

21. Android Camera2 API Session Parameter实战

介绍如何在 App 和 HAL 两侧合理使用 Session Parameter,减少 Session re-configure。

第 22 讲

22. Android Camera2 API CaptureRequest详解

介绍 CaptureRequest 的组成、Builder API、Template Type, 以及 Physical Camera Request 的设置方式。

第 23 讲

23. Android Camera2 API VendorTag实战

介绍 VendorTag 的分类、读写步骤,以及通过自定义 Metadata 获取运动检测结果的实战方式。

第 24 讲

24. Android Camera2 API 获取Physical Camera数据流

介绍如何判断 Logical Multi-Camera 能力、创建 Physical Camera 输出流,以及读取 Physical Camera 结果。

第 25 讲

25. Android Camera2 API CameraCaptureSession详解

介绍 CameraCaptureSession 的职责、StateCallback 状态机、 核心 API 与 Offline/Reprocess 相关能力。

第 26 讲

26. Android Camera2 API CameraCaptureSession.CaptureCallback详解

介绍 CaptureCallback 的各类回调、关键参数含义,以及 Partial Result 与序列完成回调的使用方式。

第 27 讲

27. Android Camera2 API 连拍实战

介绍 GeekCamera2 中连拍、曝光包围和对焦包围的实现路径与请求 下发方式。

第 28 讲

28. Android Camera2 API SlowMotion实战

介绍 Slow Motion 支持能力判断、高速录像 Session 创建、Repeating burst 与 MediaRecorder 配置流程。

第 29 讲

29. Android Camera2 API CaptureResult详解

介绍 CaptureResult 与 TotalCaptureResult 的 API、结果全集含义以及 Physical Camera 结果读取方式。

第 30 讲

30. Android Camera2 API AE自动曝光一

介绍 AE 自动曝光的基础概念、3A 总开关、AE 模式、AE 状态与 Precapture Trigger。

第 31 讲

31. Android Camera2 API AE自动曝光二

介绍曝光补偿、AE Lock、AE 状态转换、AE 测光区域与目标帧率控制。

第 32 讲

32. Android Camera2 API AE自动曝光实战

介绍 GeekCamera2 中 AE 模式、EV 控制与 AE Lock 的实现调用流程。

第 33 讲

33. Android Camera2 API 手动曝光

介绍手动曝光中的 ISO、Sensor Gain、曝光时间和 Frame Duration 相关元数据。

第 34 讲

34. Android Camera2 API 手动曝光实战

介绍 GeekCamera2 中手动调整 ISO、曝光时间和 Frame Duration 的实现流程。

第 35 讲

35. Android Camera2 API Flash闪光灯控制

介绍 Flash 支持能力判断、Flash 模式设置和 CaptureResult 中 Flash 状态读取。

第 36 讲

36. Android Camera2 API 拍照打闪实战

介绍 GeekCamera2 中不同 Flash 模式设置和拍照打闪的调用流程。

第 37 讲

37. Android Camera2 API 通过CropRegion控制Zoom缩放

介绍数字变焦能力查询、SCALER_CROP_REGION 坐标系、裁剪规则与精度控制。

第 38 讲

38. Android Camera2 API 通过Zoom Ratio控制Zoom缩放

介绍 Zoom Ratio 的引入原因、与 Crop Region 的组合关系以及对 3A 和 Physical Camera 的影响。

第 39 讲

39. Android Camera2 API Digital Zoom缩放实战

介绍 GeekCamera2 中数字变焦支持判断、Zoom Steps 计算和 Crop Region 设置流程。

第 40 讲

40. Android Camera2 API Touch AE实战

介绍 Touch AE 支持判断、屏幕坐标转换和 MeteringRectangle 区域计算。

第 41 讲

41. Android Camera2 API AF自动对焦一

介绍 AF 自动对焦模式、AF 状态和不同 AF Mode 下的状态机。

第 42 讲

42. Android Camera2 API AF自动对焦二

介绍 AF Trigger、AF Regions、Focus Range、Lens State 和 Focus Distance 校准质量。

第 43 讲

43. Android Camera2 API AF自动对焦实战

介绍 GeekCamera2 中连续对焦、主动对焦和 Touch AF 的实现流程。

第 44 讲

44. Android Camera2 API 手动对焦实战

介绍 GeekCamera2 中手动对焦支持判断、AF Mode 关闭和 Focus Distance 调整流程。

第 45 讲

45. Android Camera2 API AWB自动白平衡

介绍白平衡原理、AWB 模式、AWB Lock、AWB Region、AWB State 和 Manual AWB。

第 46 讲

46. Android Camera2 API AWB自动白平衡实战

介绍 GeekCamera2 中 AWB Mode、AWB Lock 和手动白平衡的实现流程。

第 47 讲

47. Android Camera2 API FD人脸检测

介绍 Face Detection 模式、Face 检测结果和 GeekCamera2 中画人脸框的实现流程。

第 48 讲

48. Android 13 Camera2 New APIs

介绍 Android 13 Camera2 新增的 Automotive、Torch strength、OutputConfiguration、HDR 和扩展 API。

你会得到什么

这个专题用于建立 Camera2 API 的第一性理解:

  • Android Camera 架构演进与 HAL3 全貌
  • 核心对象之间的关系
  • 打开相机的时序
  • CameraCaptureSession 的职责
  • 请求和结果回调的配合方式

适合谁

  • 刚接触 Android 相机开发的工程师
  • 需要把 Camera2 API 使用串起来的应用工程师
  • 后续准备深入 Framework / Native Framework 的同学

学习方式

建议先阅读专题首页,再按课时页顺序往下学习。后续的受保护视频和专题支付将在后续步骤接入。

第一讲会先把 Android Camera 架构演进、HAL3 软件栈和 pipeline 全貌讲清,再进入后续 API 细节。

目录

你会得到什么
适合谁
学习方式
LogoAndroid 在线课程

面向 Android 工程师的系统课程站。Camera 方向已开放,Display、Video、Audio 等系统方向会陆续扩展。

课程
  • 课程目录
  • Camera
  • 专题购买
工具
  • YUV 图像查看器
  • 视频转图片
  • 视频压缩工具
法律
  • Cookie政策
  • 隐私政策
  • 服务条款
© 2026 Android 在线课程。保留所有权利。