视频的编码与解码

概述

参考:

视频编码其实就是 图像的编码与解码音频的编码与解码 的结合体。

毕竟视频就是一幅幅图像叠加在一起而已,只不过在每时每刻又要附加上声音。

编码技术

  • AVC 也称 H.264、MPEG-4 part10
  • HEVC 也称 H.265、MPEG-H part 2
  • AV1

视频 编码 与 压缩

B 站,差评君-这么多视频编码,为什么不能统一成一种呢?

可能有小伙伴不太清楚编码器是干嘛的,差评君先花点时间给大家解释下: ( 很快的啊,不用担心内容劝退。。懂的小伙伴可以直接往下划 )

我们平常在爱奇艺、 B 站看的视频,它们原本的体量十分巨大。

有多大呢,我们就拿 1080p 分辨率的视频举例吧,一秒钟视频流大概有 149 MB 那么大( 1920 x 1080 x 8bit x 三个 RGB 通道 x 24 帧 / 8 )。

相当于说我们的网速至少需要达到 149 MB/s,才能够保证看 1080p 视频不卡。

提醒一下,149 MB/s 约合 1194 Mbps,比千兆宽带( 1000 Mbps )还快一点。

但是估计得有小伙伴说了,你这是在扯淡——我家里的宽带才一百兆,网上的视频不也照样看?

不但能实时看,还能顺手缓冲个一两分钟的量。

你们啊,Too Young~

这其实是因为,我们平常看到的视频已经是被压缩过的了。

压缩视频的原理细讲起来有点儿复杂,但要是抽简单的说主要就是干了三件事 —— 跳帧、划块、抽色。

就好比说,前一秒和后一秒都是黑屏,那么这两秒就可以当作一秒处理。( 跳帧 )

又或者,某一秒的画面是一张天空风景图,里面很大一片区域的颜色都是相同的。

那么这一大片区域的像素就可以直接当成一个大像素来处理。( 划块 )

再比如说,原始大小的视频里包含了 1760 万种色彩,可我寻思着人眼看不出来这么多色儿。

那么我就可以偷偷抽出来几百万个色,这样又节省了不少空间。( 抽色 )

经过这么一套操作之后,原始视频的大小通常可以被压缩到一个挺夸张的地步,就算是 3G 网络也能流畅观看。

无非就是感觉画面卡了一点儿、糊了一点、颜色绿了一点。。。

而编码器就是那个用来压缩原始视频的玩意 —— 编码器好,视频小的同时画质高;编码器不好,视频大、画质烂。

了解了这一点之后,我们再接着往下看。

按照阿里的说法,奇点编码器能把视频压缩千倍不影响画质,那么其他编码器呢?

差评君来给大家做个简单的实验。

首先,我们在浏览器里输入 http://bilibili.com ,打开 B 站。

然后直奔窑子区然后随便打开一个视频,把分辨率调整到 1080p 之后,在上面右键统计信息。

这样子我们就拿到了这段视频的技术向信息。

差评君帮大家解释一下,B 站这段视频使用了一个名叫 H.264 ( AVC )的编码 —— 这是个十七年前的编码。

分辨率 1080p,码率 1086 Kbps,相当于把原始视频压缩了 1099 倍。( 1194 Mbps / 1.086 Mbps )

也就是说,一款十七年前发明的编码器,就能做到压缩千倍不影响画质( 肉眼看起来 )。

阿里这时候再吹这个,就好比有人在 2020 年宣布自己发明了汽车轮子。。。

这延迟,上网用的 Internet Explorer 6.0 吧。

当然了,差评君这么说也不完全对 —— 虽然都是压缩千倍,但奇点编码器的画质肯定要比 H.264 好。

不过这里面还有猫腻。

是这样的,目前常用的视频编码器有这么几个方案:

前面提到 B 站在用的 H.264,它的继任者 H.265;谷歌的 VP9,以及开放媒体联盟研发的 AV1。

从性能上讲,谷歌的 VP9 与 H.264 接近,H.265 相比 H.264 的压缩能力提高了 50%,AV1 则略强于 H.265。

VP9 ≈ H.264 « H.265 < AV1,差不多是这么一个意思。

而阿里的奇点编码器(英文名 S265 ),其实是 H.265 的一个派生版本。

在这里差评君得补充说明一下,编码器这个行当和显卡行业其实有点儿像。

就好比说,同样是 RTX3080 显卡,我们可以直接从 NVIDIA 手上购买拉风的 FE 公版,也可以购买华硕、技嘉、微星提供的非公版。

虽然芯都是老黄 GA106,但是各家的供电、散热设计,以及显卡最终出来的性能表现都会有些细微的区别。

编码器也是一样。

ISO ( 国际标准化组织 )发了个 H.265 的规格和标准之后,各家都可以照着这个规格做一个。

百度有 BD265,腾讯有 V265;阿里则有 S265。

然而阿里的 S265 在一众基于 H.265 标准的编码器里并没什么优势。

事情是这样的 —— 奇点编码器参加的这个 “ MSU 世界视频编码器大赛 ” 其实有四个比拼项目。

但是根据主办方的说法,YUY-SSIM 维度才是最重要的指标,其他三个比拼项目只具有 “ 参考意义 ”。

所以我们可以把它们理解成主擂台,以及分擂台 1、2、3。

然而,主擂台获胜的是一款来自国外的编码器,第二名是字节跳动的 BVC,第三名是爱奇艺的 QAV1,第四名是腾讯的 V265。

阿里的奇点编码器,排。。。第七。

至于另外三个分擂台,阿里拿了其中两个第一是没错,但也是和字节、腾讯并列的。。。

然后阿里发了个通稿,我们的视频编码器包揽了两项世界冠军。。。

话说的倒都是实话,可就是没说全。

这个说法的确没什么错,况且近期阿里的负面有点儿多,宣传奇点编码器得奖是个冲喜的好办法。

但是这件事翻车就翻车在了,通稿把奇点编码器渲染的有点神 —— 压缩上千倍画质无损,两项世界第一。

稍微对这方面技术不太了解的小伙伴看着都会发懵,这个就有点儿误导人了。。。

小明考试拿了 100 分,可喜可贺。

小明和同班十几个人一起考出了 100 分的好成绩,势均力敌。

小明和同班十几个人一起考出了 100 分的好成绩,但只有小明家张灯结彩、走街串巷,仿佛完成了一件前无古人后无来者的壮举。。。

也不知道最后尴尬的会是谁。