告别“灰蒙蒙”的屏幕截图,Android 16 将支持真 HDR 截图功能
IT之家报道称,随着HDR(高动态范围)内容变得越来越普及,安卓设备用户对于捕捉HDR截图的需求亦在增长。过去,由于大部分内容仍为标准动态范围(SDR)形式,安卓系统并未支持HDR截图。但随着HDR内容的流行,用户希望截取包含HDR元素的屏幕时,能够保留其原有色彩和亮度细节。如今,谷歌即将发布的安卓16版本中终于支持HDR截图,令人振奋。
高动态范围(HDR)是指图像或视频具有比标准动态范围(SDR)更广泛的亮度和色彩范围。HDR能够呈现出更真实的视觉效果,包括更明亮的高光、更深的阴影和更丰富的细节,使图像更接近真实世界。为了展示HDR内容,设备需要具备支持更广色域的HDR显示屏,并非仅限于相对狭窄的sRGB标准。尽管一些现代安卓手机和平板电脑配备了HDR显示屏,但目前大多数内容仍为SDR格式。
以往,即使在支持HDR显示的设备上截取HDR内容的截图,这些截图也会以SDR格式保存。这是因为安卓系统在编码截图图像时,并未保留HDR内容的额外色彩信息,导致HDR截图中的高光部分显得较暗。
据悉,在安卓13引入端到端HDR视频支持后,谷歌必须更新安卓的截图算法,以使截图更符合屏幕内容。但由于截图仍以SDR格式保存,HDR截图中的HDR区域会显得较暗,而SDR内容则会显得与HDR内容同样明亮,未能真实展现。安卓14进一步引入了对Ultra HDR的支持,但由于HDR图像通常在SDR应用界面中显示,谷歌必须设法将SDR界面和HDR图像编码到单个SDR截图中。为实现这一目标,谷歌选择提亮应用界面并裁剪HDR高光,但这也导致截图无法真实还原用户所看到的内容。
随着安卓15 QPR1的到来,系统引入一种用于HDR截图的局部色调映射算法,该算法保留了界面颜色,同时防止HDR高光被裁剪,明显提升了HDR截图的效果。然而,虽然截图效果有所改善,但在HDR显示屏上仍无法充分展示HDR的视觉效果。
最终,在安卓16中,谷歌实现了对真正HDR截图的支持。Android Authority在安卓16 Beta 2中注意到,HDR截图被保存为HDR格式。当查看这些截图时,屏幕因HDR高光而变亮。Android Authority进行了Pixel 7 Pro升级至安卓16 Beta 2前后同一HDR图像的截图对比,升级前的截图为SDR格式,而升级后的截图则为HDR格式。
通过安卓源代码的深入分析,发现在SurfaceFlinger(安卓屏幕渲染中的关键系统服务)中多次提到“真正HDR截图”功能。启用该功能后,HDR内容可以无需色调映射地进行截图。
分析师Dylan Raga和GitHub用户ledoge检查了安卓16生成的HDR截图,确认这些截图是带有HDR增益图(gainmap)的PNG文件。许多通常工具未能检测到这些增益图,但专业的PNG检查器可以发现。正是这些增益图使得在安卓16设备上,截图以HDR形式显示,而在其他设备上则以SDR形式显示。
目前尚不清楚谷歌选择PNG格式用于HDR截图还是支持Ultra HDR的JPEG格式的原因。可能是出于避免JPEG压缩可能带来的伪影考虑,尤其是在裁剪截图时。
广告声明:文内包含对外链接,用于传递更多信息,节省甄选时间,结果仅供参考。
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。