苹果发布了全新的 M2 芯片。
发布会上吹得咔咔响,各种吊打隔壁的 Windows 笔记本。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
搭载 M2 的 MacBook Air,把选配全拉满还要卖 2 万多。
但有一个特性的缺席,从 M1 开始就被人吐槽,到 M2 依旧没加进去。
那就是在硬件上不支持 AV1 视频编码。
视频编码、硬解软解都是啥?
举个栗子,比如我剪了条视频。
在导出时,就要选择一个视频编码进行压缩。
操作下来,本来 2GB 的视频就可以压成几百 MB(纯举例,非真实数字)。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
视频在压缩前后,不管是画质、流畅度等,区别都没有很大。
这样我上传视频的压力,就小了很多。
另外视频上传到视频网站后,平台会再压一遍。
用户就不用花费过多的流量,也能看到足够清晰的视频。
同时网站方需要承受的带宽压力也小很多。
So,在性能强的视频编码加持下,不管是做视频的、看视频的,还是视频网站,三方都有好处。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
但是,我要说但是了吼。
咱普通用户在看视频时,手机、电脑等设备要进行解码。
相当于把一个压缩包解压。
理论上这个解码嘛,可以通过 CPU 用软件搞,也就是软件解码(软解)。
▲图片来源网络
但编码规格越高,算法就越复杂,软解压力就越高。
要是在处理器里,加入一个核心专门处理视频解码,那这个效率就会高很多。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
这种捏,就是硬件解码(硬解)。
所以有时候,为什么明明播放的是本地视频,还会这么卡。
就是因为设备不支持这个视频的硬解,把性能全拿去跑软解了。
看视频想看得爽,也是有条件滴。
近年主流视频编码发展
比较古早的 DVD 那种 DIVX 格式,就不在讨论范围里了吼。
近年比较主流的编码,应该得数 AVC(H.264)。
AVC 格式由 ITU-T(国际电信联盟)制定,发布时间是 2003 年。
慢慢发展下来,不管是电脑、手机,还是电视盒子等等,基本都支持 AVC 格式。
但随着 4K 高清的到来,AVC 多少有些扛不住了。
2013 年,ITU-T 顺势整出了新的视频编码,HEVC(H.265)。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
HEVC 相当于 AVC 的升级版,不仅拥有更高的编码效率,还支持 4K 和 8K 视频。
注意噢,硬件厂商和视频平台想要用 AVC 和 HEVC,都是得收钱的。
之前的 AVC 用得这么广泛,一方面是对手拉胯,一方面是只有 1 个专利池,收费不贵。
不贵还好用,谁能不爱呢?
但到了 HEVC,专利池去到了 3 个。
换言之,想要用新编码,要交的钱就更多了。
对于全新的 HEVC,有的厂商支持,有的厂商则表示沿用旧的 AVC 编码更划算。
硬件厂商这边,大多是愿意「买买买」的 HEVC 支持者。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
苹果从 A9 处理器时代开始,就在硬件上支持 HEVC 格式。
谷歌、英特尔、英伟达、AMD 等也是相继掏钱。
但视频平台这边,愿意为 HEVC 买单的就不多了。
就算是有,也是不情不愿,很晚才用上。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
▲2020 年才支持 HEVC 的 B 站
原因很简单,视频网站大多是免费用户,看的视频顶多就 1080P,用不着 HEVC 格式来压。
为不必要的视频编码掏钱,不划算。
至于为什么这两年用 HEVC 的多了,也是因为这两年看 4K 的人多了。
有需求,视频网站自然也要跟着升级。
微软这边甚至取消了默认播放器对 HEVC 的免费支持。
等你的设备支持硬解,轮到你的系统不自带解码器了。
就是这么气人。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
用户想要用,只能自己掏钱,或寻找免费的解码器。
这时候,市面上急需一个规格够先进、且免费的编码。
其实早在 HEVC 发布前一年(2012),谷歌就推出了免费开源的视频编码 VP9。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
但因为谷歌对 VP9 控制权太大,愿意合作的视频平台不算多。
要是哪天谷歌反水,突然说要收钱,那不得打出一个「GG」。
所以谷歌这次学精了,直接拉上其他巨头一起搞。
讲究的是一个「安全感」。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
2015 年,由谷歌、苹果、脸书、微软等大厂牵头的开放媒体联盟 AOM 成立。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
随后还有像 AMD、英伟达等也纷纷宣布加入。
2018 年,AOM 联盟发布了 AV1 编码技术,对标 HEVC。
最关键的是,AV1 编码免费。
「战未来」的 AV1 编码
作为后起之秀,规格高、还免费的 AV1 确实很香。
相比 HEVC,AV1 的压缩率提升了 27%。
也就是说,同一部 4K 电影用两种格式压。
HEVC 压出来 1GB,AV1 压出来就是 750MB 左右(还是举例,非真实数字)。
目前国内的像 Bilibili、爱奇艺等视频平台,也在播放里内嵌了对 AV1 格式的支持。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
但前面也提到了,用户想要使用某个高规格编码看视频,用软解是不实际的。
看个视频 3 秒一小卡,5 秒一大卡,谁能受得了?
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
有小伙伴可能说:
「我的苹果 M1 电脑看 B 站特地开了 AV1,也很流畅啊,内存占用也没变多。」
关于这点,其实你以为开了 AV1,实际上 B 站偷偷给你转回 AVC 去了。
B 站太贴心了,他真的,我哭死。
另外目前支持硬解 AV1 的设备,是真的少。
电脑端的,从 11 代酷睿核显、30 系显卡等才开始支持。
手机端的,现在只有三星 Exynos 2200、联发科的天玑 9000/8100 等较新的几款芯片才有。
高通这边还要等下代的骁龙 8 Gen 2 才有可能用上。
至于 AOM 牵头人之一的苹果,就更有意思了。
不仅是手机、平板没有加入对 AV1 的硬解。
甚至连最先进的 M2,依旧没支持 AV1 硬件解码。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
虽然最近有人扒出,苹果 AVFoundation 的核心媒体库里,出现了名为「kCMVideoCodecType_AV1」的变量。
这可能在暗示苹果准备把 AV1 列入软解支持。
但说到底吼,还不是硬解,在体验上差一截。
偏爱「自嗨」的苹果
苹果对推动 AV1 不积极,其实也讲得通。
果子近年一直在推动 HEVC 编码格式。
或许苹果觉得,与 AV1 同期发布的 VVC(H.266),才是视频编码的未来。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
对了,VVC 也要收专利费。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
现在用 iPhone 拍的视频,基本都是 HEVC。
如果拍出的视频原素材直接拖到 Windows 电脑上,又没有经过重新编码。
打开时又会跳出那个感人的弹窗:
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />
体验就非常糟糕。
不过嘛,哪天其他厂商全都上了 AV1,说不定也会倒逼苹果接受。
这也是有先例的吼。
当年果子口口声声说不支持 VP9 编码,过了两年就突然说可以用了。
nload="this.removeAttribute('width'); this.removeAttribute('height'); this.removeAttribute('onload');" />