本文来自微信公众号:爱范儿(ID:ifanr),作者:黄智健,原文标题:《未来取代JPEG的,可能是Android 12支持的新图片格式》,头图来自:视觉中国
“手机储存空间已满,请及时清理。”每次清理手机内存时我们都会发现,占了256G空间半壁江山的不是什么大型游戏或者电影,而是平时冲浪时的图片缓存。
数百KB的图片看似不多,但积累起来时大小还是非常可观的。
其中JPEG是最常见的图片格式,但是从压缩效率和质量来说它已显得过时,如果能换用更高效率的图片格式,也许会是释放储存空间的好办法。
而Android 12最新支持的AVIF格式,会是能取代JPEG的新标准吗?
一、我们为什么需要更先进的图片格式?
这张有着浓浓“古早”味的乐队海报图片,也许就是第一张被上传到互联网的图片,其在 1992 年,由“互联网之父”蒂姆·伯纳斯·李上传到互联网上,图片的格式为 Gif。
从此开始,互联网的世界才开始变得多彩起来,网络图片的出现丰富了互联网世界的色彩,也带给了网络更多的意义。
人们借由图片可以在网络创造和分享更多文字所不能传达的内容,例如用表情包聊天宣泄情感等。
也是自此开始,各式各样的图片格式成为了每个网民互联网冲浪的基石,你也许不知道它,但是离不开它。
目前常见的图片格式常分为有损压缩格式(JPEG)和无损压缩格式(PNG),无论损不损,压缩都是每种格式(RAW 等格式以外)的重要职责。
图片为什么要压缩?每张照片都是由一个个像素点组成,根据计算,一张2000万像素、8 Bit色深的照片大小约为60MB,如此庞大的体积不要说分享,即便是自己存在储存卡里,再大的空间也显得捉襟见肘。
这时候,对于像素点进行分类整合,压缩数据大小便显得尤为重要。
压缩的过程就像是我们在做数学题时用到的“化简”技巧,将重复相似的像素点数据通过“合并同类项”简化(压缩原理非常复杂,在此不展开),最终得到画质基本一致、数据大小却大幅瘦身的压缩图片。
既然有无损压缩格式呢,为什么最流行的还是 JPEG 这样的有损压缩格式?
在这篇博客中,Netflix 用了多张JPEG格式与AVIF格式的海报进行对比,可以看到,在文件大小相近的情况下,AVIF格式能保留更多的细节,而JPEG格式已经出现肉眼可见的条带、噪点,文字的四周也出现了锯齿。
在Jake Archibald的博客中,他将JPEG与AVIF图片都压缩到相近的水平,来对比两种图形编码方式的优劣。
留意画面的细节你会发现,20 KB的JPEG F1赛车已经基本无细节可言,画面充斥着大色块的涂抹、变色和锯齿。
而当看到18 KB的AVIF F1赛车时,就像是近视眼带上了眼镜:平滑的赛道、色彩过渡自然的赛车、保留细节的头盔,更令人难以置信的是,这张清晰得多的AVIF图片,体积甚至要比JPEG还小。
JPEG 除了压缩会导致画面细节丢失以外,色彩失真也是它被人诟病的一个点。例如早期表情包出现的“电子包浆”现象,就是因为表情包在用户之间传输时,不断被压缩产生的色彩失真(变绿包浆是因为Android 7之前压缩图片产生了 Bug)。
这种“电子包浆”对于表情包来说也许是一种荣耀(意味热门而被广泛传播),但是对商品展示图来说,颜色的失真则会引起许多不必要的麻烦。
视频博主Jon Sneyers将一张 JPEG 图片与 AVIF 图片对比测试压缩1000次后的前后变化,从结果上看,JPEG已经面目全非,而AVIF依然崭新,这又是一次属于AVIF的胜利。
那么AVIF到底是什么格式呢?在此之前,我们必须首先了解什么是AV1。AV1是一个开源视频编解码器,由开发媒体联盟提出,其目的是压缩视频和图像,以减少占用的空间,但质量始终如一。
尽管视频编解码器主要是为了视频而开发的,但是视频编解码器中的帧内编码工具与图像压缩工具并没有太大的不同,鉴于视频编解码器的巨大压缩进步,将它们作为图像编码格式也能得到卓越的效果。
而AVIF则代表了AV1图像文件格式 。换句话说它是AV1的图像格式。通过借鉴了下一代的视频压缩技术,AVIF格式的各项指标全面超越了JPEG,压缩效率更高、支持无损压缩、支持动画、最高支持12bit 色深。
三、JPEG 的挑战者中,AVIF来势最凶的一个
经过对比可以发现,JPEG在压缩效率方面与AVIF的确存在比较大的差距,但JPEG有一个AVIF难以匹敌的优势——JPEG 有着惊人的兼容性,你几乎找不到一个打不开 JPEG 格式的设备。
想要让用户和厂商接受并推广一个全新的图片格式,并不是一件容易的事,在AVIF之前,JPEG就面对过不少挑战者,其中HEIF格式也许会是你印象最深刻的一个。
自从2017年苹果在iOS 11上加入了对HEIF的支持,它就开启了“爆火模式”。
苹果宣布iPhone拍摄的图片将以HEIF格式储存取代过去的JPEG格式,一时间手机圈都以“支持HEIF格式拍照储存”功能为时髦,纷纷跟进。
HEIF之所以能被苹果相中,自然是因为其优异的性能:它相比JPEG压缩效率更高、支持无损压缩、支持动画、最高支持16 bit 色深(JPEG 只有 8 bit)。
听起来是不是很熟悉,没错,AVIF 的特性与 HEIF 基本一致,因为AVIF就是对标HEIF开发的开源版本,两者之间有着一段“爱恨情仇”。
除了苹果以外,一些相机厂商也宣布支持 HEIF 格式拍摄,例如佳能推出的1D X Mark iii也宣布支持HEIF格式输出,DCW的James Artaius评价道:“优异的HEIF使得JPG变得相当多余,实际使用它几乎没有什么实际意义。”
然而现在将 HEIF 捧上神坛显然为时过早,就浏览器格式兼容性来说,HEIF目前连苹果自家的Safari都不支持,距离普及还有非常遥远的一段距离。
如此高效的图片格式却得不到广泛的支持,其中重要的一个原因就是HEIF本身的专利授权问题。HEIF是基于新一代视频编码格式 HEVC (H.265) 的图像文件标准,后者是MPEG为了更新主流的H.264编码标准所推出的全新版本。
采用了新算法的HEVC一切都好,同样体积大小的视频HEVC标准比H.264要清晰得多,但同时也要收取一笔相当不菲的授权费。想要在新设备上用HEVC的编码技术,厂商推出的每一台设备都要给MPEG抽一笔授权费,如同雁过留毛。
这种无形的成本显然给新标准的推广造成了不小的阻碍,这也促使了开发媒体联盟的诞生——由 Netflix、Google、Facebook、微软、三星、华为、腾讯等科技巨头联合组成了“复仇者联盟”,推出了指标看齐HEIF的AV1编码技术,并且不收任何授权费,开源给开发者们使用。
而AVIF则是这个“复仇者联盟”向MPEG发出的另一个挑战信号。
有趣的是,苹果作为HEIF坚定的拥护者,同时也是开发媒体联盟的重要成员,共同合作开发AV1编码技术和AVIF标准。苹果对此没有任何回应,同时也未宣布对AV1和AVIF标准的支持,模糊不清的态度值得玩味。
开源的标准似乎更容易得到网站和设备的支持,在Google和其他巨头的推动下,目前AVIF已经得到了 Chrome、Opera、Firfox 等浏览器的支持。
而得到了Android 12的原生支持,也意味着AVIF在未来将有可能普及到数以亿计的设备中。
这么看来,既开源又高效的AVIF能颠覆JPEG的统治地位了吗?很遗憾的是,在得到内容与设备端的全面普及之前,在接下来的几年甚至更长的一段时间里,低效的JPEG依然会是最常见的图片格式。
不过HEIF未能完成的豪情壮志,AVIF很有可能会先一步实现,毕竟在互联网世界中,免费的才是最好的。
本文来自微信公众号:爱范儿(ID:ifanr),作者:黄智健