微信关注,获取更多

AV1、h265 (HEVC) 、VP9这些编码标准有什么区别?

不同的视频编解码器提供不同的压缩率和视频质量,一部两小时长的电影在未压缩时会占用超过 1.7 TB 的存储空间。那么,像B站之类的流媒体巨头是如何设法存储和流式传输占用如此多空间的视频的呢?今天我们来为大家介绍一下AV1、h265 (HEVC) 、VP9这些编码的区别。

4K 流媒体近年来非常流行,但每 16 毫秒传输超过 820 万像素的信息要在互联网上存储和传输 4K 视频绝非易事。

什么是视频编解码器?

在深入研究视频编解码器的复杂性之前,了解视频的创建方式至关重要。简而言之,视频不过是一组快速相互替换的静止图像。

由于这种高速变化,人脑认为图像在移动,从而产生观看视频的错觉。因此,在观看 4K 视频时,您只是在看一组分辨率为 2160×3840 的图像。这种高分辨率的图像使 4K 视频拍摄能够提供出色的视频体验。也就是说,这种高分辨率的图像增加了视频的大小,使得无法通过带宽有限的渠道(例如互联网)进行流式传输。

为了解决这个问题,我们有视频编解码器。编码器/解码器或压缩/解压缩的缩写,视频编解码器将图像流压缩成数据位。根据所使用的压缩算法,此压缩可能会降低视频质量或对其没有影响。

顾名思义,编解码器中的压缩位会减小每个图像的大小。为此,压缩算法利用了人眼的细微差别——防止人们知道他们观看的视频是经过压缩的。相反,解压缩的工作方式相反,并使用压缩信息呈现视频。尽管编解码器在压缩信息方面做得很好,但执行同样的操作可能会对您的 CPU 造成负担。因此,当您在系统上运行视频压缩算法时,系统性能出现波动是正常的。

为了解决这个问题,CPU 和 GPU 配备了可以运行这些压缩算法的特殊硬件。使 CPU 能够执行手头的任务,同时专用硬件处理视频编解码器,从而提高效率。

视频编解码器如何工作?

现在我们对视频编解码器的作用有了基本的了解,我们可以看看编解码器是如何工作的。

1、色度子采样

如前所述,视频由图像组成,色度子采样减少了每个图像中的信息。为此,它减少了每个图像中包含的颜色信息,但人眼如何检测到这种颜色信息的减少?

人眼很擅长检测亮度的变化,但对于颜色却不能这样说。这是因为与视锥细胞(负责区分颜色的感光细胞)相比,人眼具有更多的视杆细胞(负责检测亮度变化的感光细胞)。在比较压缩图像和未压缩图像时,视杆和视锥的差异会阻止眼睛检测颜色变化。

为了执行色度子采样,视频压缩算法将 RGB 中的像素信息转换为亮度和颜色数据。之后,该算法会根据压缩级别减少图像中的颜色量。

2、去除冗余帧信息

视频由几帧图像组成,在大多数情况下,所有这些帧都包含相同的信息。例如,想象一段视频,其中有一个人在固定背景下讲话。在这种情况下,视频中的所有帧都具有相似的构图。因此,不需要所有图像来渲染视频。我们所需要的只是一张基本图片,其中包含从一帧移动到另一帧时与变化相关的所有信息和数据。

因此,为了减小视频大小,压缩算法将视频帧分为 I ??帧和 P 帧(预测帧)。这里 I 帧是基本事实,用于创建 P 帧。然后使用 I 帧中的信息和该特定帧的更改信息来渲染 P 帧。使用这种方法,视频被分解成一组 I 帧,交织成 P 帧,进一步压缩视频。

3、运动压缩

现在我们已经将视频分成 I 帧和 P 帧,我们需要看看运动压缩。视频压缩算法的一部分,有助于使用 I 帧创建 P 帧。为此,压缩算法将 I 帧分成称为宏块的块。然后为这些块提供运动矢量,运动矢量定义这些块在从一帧过渡到另一帧时移动的方向。

每个块的运动信息有助于视频压缩算法预测每个块在即将到来的帧中的位置。

4、删除高频图像数据

就像颜色数据的变化一样,人眼无法察觉图像中高频元素的细微变化,但什么是高频元素呢?嗯,你看,屏幕上呈现的图像包含几个像素,这些像素的值根据显示的图像而变化。

在图片的某些区域,像素值逐渐变化,这些区域被称为频率较低。另一方面,如果像素数据发生快速变化,则该区域被归类为具有高频数据。视频压缩算法使用离散余弦变换来减少高频分量。

下面是它的工作原理。首先,DCT 算法在每个宏块上运行,然后检测像素强度变化非常快的区域。然后它从图像中删除这些数据点——减小视频的大小。

5、编码

现在视频中的所有冗余信息都已被删除,我们可以存储剩余的数据位。为此,视频压缩算法使用了一种编码方案,例如霍夫曼编码,它将帧中的所有数据位与它们在视频中出现的次数相关联,然后以树状方式将它们连接起来。此编码数据存储在系统中,使其能够轻松呈现视频。

注:不同的视频编解码器使用不同的技术来压缩视频,但在最基本的层面上,它们使用上面定义的五种基本方法来减小视频的大小。

AV1、HEVC、VP9哪种编解码器最好?

现在我们了解了编解码器的工作原理,我们可以确定 AV1、HEVC 和 VP9 中哪个是最好的。

1、可压缩性和质量

如果您的 4K 视频在您的系统上占用了大量空间并且无法将其上传到您最喜欢的流媒体平台,您可能正在寻找提供最佳压缩比的视频编解码器。但是,您还需要考虑到,随着您不断压缩视频,它提供的质量会下降。因此,在选择压缩算法时,必须查看它在特定比特率下提供的质量,但视频的比特率是多少?

简单来说,视频的码率定义为视频播放一秒需要的比特数。例如,以 60 帧运行的 24 位未压缩 4K 视频的比特率为 11.9 Gb/s。因此,如果您在互联网上流式传输未压缩的 4K 视频,您的 Wi-Fi 必须每秒传输 11.9 吉比特的数据——几分钟内就会用完您每月的数据配额。

相反,使用压缩算法可以根据您选择的比特率将比特率降低到非常小的数量,而不会降低质量。

在可压缩性/质量数字方面,AV1 处于领先地位,与 H.265 相比压缩率提高 28.1%,与 VP9 相比节省 27.3%,同时提供相似的质量。

因此,如果您正在寻找不降低质量的最佳压缩,AV1 就是适合您的压缩比。由于 AV1 编解码器具有很高的压缩质量比,谷歌在其视频会议应用程序 Google Duo中使用它,Netflix 在低带宽数据连接上传输视频时使用它。

2、兼容性

如前所述,视频压缩算法会在视频被压缩后对其进行编码。现在要播放此视频,您的设备需要对其进行解码。因此,如果您的设备不支持解压缩视频的硬件/软件,将无法运行它。

因此,了解压缩算法的兼容性方面很重要,因为创建和压缩不能在许多设备上运行的内容有什么意义?

因此,如果您正在寻找兼容性,那么 VP9 应该是您的编解码器,因为它在超过 20 亿个端点上受支持,并且可以在每个浏览器、智能手机和智能电视上运行。

AV1 则不同,因为它使用更新、更复杂的算法来减小视频文件的大小,并且无法在旧设备上播放。关于浏览器支持,Safari 无法播放 AV1,但 Firefox 和 Chrome 等浏览器可以毫无问题地播放 AV1 视频。

在硬件支持方面,Snapdragon 8 Gen 2、三星 Exynos 2200、联发科天玑 1000 5G、Google Tensor G2、Nvidia 的 RTX 4000 系列以及 Intel Xe 和 Arc GPU 等新的 SoC 和 GPU 支持 AV1 编解码器的加速硬件解码. 因此,如果您拥有由这些芯片组驱动的设备,您可以享受使用 AV1 编解码器压缩的流媒体内容,而不会耗尽您的 CPU/GPU 的能力。

对于 H.265 编解码器,大多数流行的浏览器(如 Safari、Firefox 和 Google Chrome)都可以毫无问题地运行使用压缩算法编码的视频。也就是说,与 AV1 和 VP9 相比,H.265 不是开源的,需要购买许可证才能使用 H.265 编解码器。因此,操作系统自带的 Microsoft Movies & TV 视频播放器等应用默认无法运行使用 H.265 编码的视频。相反,用户必须从 Windows 商店安装附加组件才能运行此类视频。

3、编码速度

视频编解码器可大幅缩减视频的大小,但要缩减视频的大小,需要使用软件对未压缩的视频进行处理,这需要时间。因此,如果要减小视频的大小,则必须查看使用压缩算法压缩视频所需的时间。

总结:AV1、h265 (HEVC) 、VP9这些编码标准有什么区别?

谈到视频编解码器,找到完美的编解码器是非常主观的,因为每个编解码器都提供不同的功能。如果您正在寻找最佳视频质量,请选择 AV1。如果您正在寻找最兼容的视频编解码器,VP9 将是您的最佳选择。如果您需要高质量和无编码开销的压缩,H.265 编解码器非常适合。

未经允许不得转载:下一个课程 » AV1、h265 (HEVC) 、VP9这些编码标准有什么区别?

评论

2+2=

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏