照片更逼真:谷歌正为更多第三方应用提供 Ultra HDR 图像拍摄支持

7 月 14 日消息,据 AndroidAuthority 报道,谷歌正在将 Ultra HDR 拍摄功能带给更多第三方应用。

我们熟悉的相机 HDR 处理技术实际上使用计算摄影和图像堆叠来实现类似 HDR 的效果,但生成的图像仍然是标准动态范围 (SDR)。然而,从安卓 14 开始,许多安卓手机开始能够使用名为 Ultra HDR 的格式拍摄真正的 HDR 照片。不过,许多带有内置相机功能的第三方应用目前还无法拍摄 Ultra HDR 照片,但这种情况即将改变。

据了解,Ultra HDR 是一种由谷歌研发的新型图像格式,基于流行的 JPEG 格式。由于基于 JPEG,几乎所有设备都可以查看 Ultra HDR 图像,无论它们是否具有 HDR 显示屏。但是,Ultra HDR 图像的特别之处在于,当它们在具有 HDR 显示屏的设备上查看时,将显示图像的 HDR 版本,提供更鲜艳、对比度更高的色彩。

这是因为 Ultra HDR 图像是包含嵌入元数据的 HDR 增益映射的 JPEG 文件,应用可以将其应用于文件中也包含的基本 SDR 版本图像。由于创建图像时必须创建此 HDR 增益映射并将其保存到 JPEG 文件的元数据中,因此现有相机应用需要更新以支持此步骤。谷歌在安卓 14 中创建了一个 API,供相机应用执行此操作,但该 API 是 Camera2 的一部分,而不是 CameraX,这限制了它的普及度。

Camera2 是与安卓操作系统框架捆绑在一起的 API,旨在供希望部署高级相机功能的应用程序使用,例如具有多个镜头专业级控制的成熟第三方相机应用。而 CameraX 是与 Jetpack 支持库捆绑在一起的 API,更适用于那些只需要访问摄像头进行辅助功能的应用,例如可以快速拍摄照片与朋友分享的社交媒体应用。开发人员可以选择使用哪个相机 API,但由于新相机功能首先为 Camera2 开发,因此依赖 CameraX 的开发人员需要等待谷歌移植该功能。由于 CameraX 的设计更简洁,一些 Camera2 功能永远不会移植到 CameraX,不过好在是,Ultra HDR 拍摄支持并非其中之一。

谷歌在今年的 I / O 2024 开发者大会上宣布,他们将更新其 CameraX 库以支持 Ultra HDR 图像拍摄。查看 CameraX 库的版本说明,可以看到 4 月份发布的 1.4.0-alpha05 版本中添加了对 Ultra HDR 拍摄的初步支持。CameraX 的 1.4.0 版本将向 ImageCapture 和 ImageCaptureCapabilities 类引入新的输出格式 API。

这些 API 包括 ImageCaptureCapabilities 中的 getSupportedOutputFormats 方法,用于查询设备是否能够拍摄 Ultra HDR 图像;理论上运行 Android 14 或更高版本的设备都应该可以,因为编码器库与该操作系统的版本捆绑在一起,不过目前不能百分之百确定这一点。如果在支持 Ultra HDR 图像拍摄的设备上将输出格式设置为 OUTPUT_FORMAT_JPEG_ULTRA_ HDR,那么 CameraX 库将以“JPEG / R”图像格式拍摄 Ultra HDR 图像。(“JPEG / R”中的“R”代表“恢复映射”,指的是嵌入在 JPEG 文件中的 HDR 增益映射。)

正如 API 描述中所述,对于旧应用或配备 SDR 显示屏的设备,这些图像将无缝显示为常规 JPEG 文件,而对于已经完全更新为支持该格式的应用和设备,它们将显示为 HDR 图像。目前支持超高清 HDR 的应用并不多,只有谷歌 Chrome 浏览器在 Android 和桌面端全面支持。能够充分显示 Ultra HDR 图像的设备包括三星 Galaxy S24 系列、谷歌 Pixel 7 和 Pixel 8 系列、一加 12 等,以及其他几款设备。一些带有 HDR 显示屏的较新 Windows 电脑也可以显示 Ultra HDR 图像。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平