智能手机摄影技术已经取得了很多的进步,虽然大多数人对于智能手机摄像头的默认输出效果感到满意,但仍有一些人希望在分享照片之前对其进行美化。不幸的是,当你给Android的照片编辑应用程序提供以 JPEG 格式保存的照片时,它们能做的调整有限。如果你想要更多的编辑自由,那么你需要切换到RAW格式拍摄。然而,许多带有摄像功能的Android应用并不支持RAW格式拍摄,但随着即将推出的Jetpack CameraX库的更新,这一情况将会有所改变。
如果你不清楚,RAW格式拍摄是指保存来自摄像头的原始图像数据,而不进行任何压缩或处理。RAW 格式拍摄的好处在于,白平衡、曝光、锐度等方面可以在后期的照片编辑软件中进行调整。另一方面,RAW 图像文件的大小可能显著大于JPEG图像,消耗了宝贵的存储空间,而许多价格较低的手机并没有足够的空间。虽然JPEG压缩是有损的,但最终的效果通常对大多数人来说并不明显,特别是在压缩级别较低时。
编辑照片需要时间,且需要一定的知识,通常也并非必要,因此大多数Android的相机应用不会默认捕捉RAW照片。不过,大多数相机应用确实支持RAW格式拍摄,只是需要在设置中启用。然而,有一些带有摄像功能的应用程序尚不支持RAW格式拍摄,并非它们不想支持,而是无法支持。
那些使用Jetpack CameraX库而非Android Camera2 API的应用程序,目前只能将照片保存为 JPEG 格式。这也符合逻辑,因为Jetpack CameraX库旨在为只需基础摄像功能的应用提供支持,比如社交媒体应用允许用户拍照与朋友分享。而另一方面,Camera2 API长期以来支持RAW格式图像捕捉,因为它是专为功能齐全的相机应用设计的。
由于Camera2 API比CameraX更复杂,许多不需要高级摄像控制的应用开发者更倾向于使用CameraX。CameraX目前并不支持Camera2的许多功能,不过Google一直在努力将更多功能引入CameraX。例如,Google在CameraX 1.4.0版本中引入了超 HDR 捕捉支持。在下一版CameraX中,Google计划添加对RAW格式拍摄的支持。
上周发布的CameraX 1.5.0-alpha03版本展示了即将加入CameraX 1.5.0稳定版本的新功能。在1.5.0版本中,CameraX的ImageCapture类将增加两种新的输出格式:OUTPUT_FORMAT_RAW和 OUTPUT_FORMAT_RAW_JPEG。前者只捕捉单张RAW图像,而后者则同时捕捉RAW和JPEG图像。RAW图像将保存为Adobe DNG格式,这是最广泛使用的RAW文件格式之一。
看到CameraX增加对RAW格式拍摄的支持非常有趣,特别是因为该库本身并非为需要高级摄像功能的应用设计。然而,随着越来越多的应用使用CameraX,Google必然会面临更多新功能需求。或许有一些开发者说服了Google在CameraX中增加对 RAW 图像的支持,尽管我们还不知道哪些应用计划使用这一功能。不过,这个变化有望为更多内置摄像功能的第三方应用带来RAW捕捉支持。