本指南介绍了如何将汽车摄像头实现从增强型视觉系统 (EVS) API 迁移到 Camera2 API。我们计划弃用用于摄像头功能的 EVS API。此过渡旨在通过使用 Camera2 框架,在 Android Automotive OS (AAOS) 上标准化摄像头开发。
迁移原因
这些因素是迁移的基础。
统一的 API:Camera2 为 Android 上所有相机开发提供了一个统一且一致的 API,适用于所有类型的设备(手机、平板电脑、电视和车辆)。
更广泛的访问权限:系统应用、第一方应用和第三方应用均可使用 Camera2。这与 EVS 不同,后者仅限于系统应用和第一方应用。
减少碎片化:Camera2 使 OEM 无需维护和支持两个单独的相机堆栈。
标准功能:Camera2 受益于为核心 Android 相机框架开发的持续增强功能和特性。
受影响的 EVS 组件
EVS 被弃用后,以下 EVS 组件可能会受到影响:
EVS HIDL 接口 1.0 和 1.1 以及实现。这些接口(包括框架 HAL EVSManager 1.0 和 1.1 以及 Mock 和 V4L2 HAL)已在 Android 14 中弃用。
EVS AIDL 接口和实现。包含 EVS 管理器提供的内置 API。
CarEVSManager 和 CarEVSService。使用车辆硬件抽象层 (VHAL)
GEAR_SELECTION
属性来提供对 EVS 和后视摄像头集成的访问权限的 Java 服务。EVS 模拟 HAL 和 V4L2 UVC HAL。EVS 模拟器和基于 V4L2 的实现。
超声波 API。所有基于 EVS 的超声波传感器 API。
EVS 到 Camera2 兼容性库
我们计划提供一个兼容性库(shim 层),以支持 EVS 客户端向 Camera2 的过渡。
测试套件合规性
所有 Camera2 实现都必须通过以下 Android 合规性测试:
- 兼容性测试套件 (CTS) 用于验证整体 Android 兼容性。
- 供应商测试套件 (VTS) 用于测试相机 HAL 接口。
- 图像测试套件 (ITS) 用于验证图像质量和正确性。
如需了解详情,请参阅相机 HAL 测试。
反馈
我们非常重视您针对从 EVS 迁移到 Camera2 提供的反馈。如需提供意见,请参阅报告和跟踪 bug。提交问题时,请在标题中添加“EVS 到 Camera2 迁移指南”。