视频压缩是视频制作中最重要的方面之一。YouTube、Facebook 和 Vimeo 等流媒体服务所面临的数据限制通常会阻碍对高质量视觉和声音的需求,以吸引观众的注意力。本文通过实际练习解释了视频压缩的重要性,以阐明要点!
为什么要压缩视频?
几十年来,视频压缩一直是一个广泛研究的主题,这是理所当然的。
每一年都会带来视频捕捉、渲染和显示技术的创新。与此同时,公司面临着消费者期望以相同或低于他们支付的成本获得更好看的视频(更高质量)。换句话说,Netflix、HBO 等内容提供商需要向您展示更高质量的视频,同时又不将成本转嫁给你!但是,这说起来容易做起来难。
每天,全世界有数百万人以电影、节目、新闻和体育广播、TikTok 剪辑或 Facebook 上无处不在的形式观看视频。
但是,几乎每个人都不知道每次按下“播放”按钮时制作、存储和交付视频的复杂性。人们站在埃菲尔铁塔前,惊叹建造它的辛勤工作。事实是,建立视频传输管道以确保您的观众可以随时随地按需观看他们的视频并不像听起来那么容易!而且也不便宜!
视频捕获和传输管道中的一个关键组件是视频压缩部分(正式称为编码器/转码器)。公司花费大量时间和精力来选择和微调他们的编码器。但是,您有没有想过为什么我们需要在传输视频之前对其进行压缩?在这里进行的权衡是什么?我们通过压缩视频获得了什么?它可以忽略不计并且可以取消吗?
这些都是很好的问题,因为一旦理解了“为什么”,其他一切都会水到渠成!在本文中,我们将尝试论证视频压缩的存在。希望为一系列文章定下基调,这些文章将带您深入了解视频压缩的艺术和科学。
单个 Pixel 的成本是多少?
好的 – 所以,要存储视频(当然还有传送它们),您需要为存储设备做预算。现在,让我们忽略事物和交付的问题,而只关注存储问题。
用于存储视频的存储设备(SSD 或 HDD)代表您的成本。我们的目标是估算存储 1080p 格式、24 fps、彩色 (RGB) 和 90 分钟长的视频的成本。
但是,为了了解成本,让我们首先将视频分解为其组成部分。
那么,视频是由什么组成的呢?答案出奇地简单——电影由一系列图像组成,这些图像以设定的速度向您展示,让你误以为有运动!
这些图像中的每一个都称为“帧”,因此,电影基本上是按特定顺序排列的一系列帧。
再深入一层,帧由像素组成。
以特定顺序排列的几个像素构成一帧。例如,1080p 帧具有 1920 x 1080 像素,排列为 1080 行和 1920 列。
而且,进一步理解这一点,框架不是简单的二维数字数组。为了产生色彩感,在我们的示例中,我们假设一帧视频有 3 个平面——一个用于红色、蓝色和绿色。原色 – 红色、蓝色和绿色可以组合以创建您想要的任何颜色。
单帧 1920 列 1080 行像素的 R、G、B 平面
例如,如果你按等比例混合红色、绿色和蓝色,你可以产生灰色阴影——从黑色到纯白色!此属性非常有用,以至于这三种颜色用于在数字显示器(电视或手机)中产生所有不同的颜色。
很酷——所以现在我们知道帧是一个 3D 像素阵列,而像素实际上只是表示颜色强度的数字(在我们的示例中为 R、G、B)。
假设您使用 8 位内存 来表示其中一个颜色平面中的一个像素,那么,为了表示 RGB 三元组的强度,您需要 24 位内存。
也就是说,我们需要24位的空间来存储1个像素(R,G,B)。
注意:了解视频技术的读者会认识到视频不是以 RGB 格式存储的,而是以 YUV(420、422 或 444)格式存储的。此外,您会注意到位深度可以变化(每像素 8、10、12 位)。但是,对于本文,让我们假设我们的视频以 RGB 和 8 位格式存储。我们将在视频压缩系列的未来帖子中介绍不同的颜色、子采样和位深度格式。感谢您忍受这个简单的例子!
一部 90 分钟、1080p 的电影要多少钱?
现在我们知道存储视频的单个像素(R、G、B)需要 24 位,让我们计算整个视频帧的成本。如果您正在观看高清视频或 1080p,我们谈论的是每帧 1920 x 1080 像素。因此,一帧的成本是 (1920 * 1080 pixels * 24 bits/pixel) = 49766400 bits
。但是,我们不是来观看图像的。我们想看整部电影!为了保持运动感(或者让你的眼睛认为有“运动”),你的电视需要每秒显示 24 帧 ( fps ),否则你的大脑会很快意识到你没有在看视频。这种现象称为“视觉暂留”或“运动幻觉”。我们很清楚,24 fps 被认为是最低限度的帧速率(帧速率是视频每秒的帧数)。业界认为 60 fps 是一个很好的标准帧率。
我们来计算一下一部电影的存储空间
那么,假设我们的电影是以每秒包含 24 帧的方式制作的,那么 1 秒视频所需的存储空间是多少?
它是 49766400 bits/frame * 24 fps = 1194393600 bits/second
。
这是一部电影的 1 秒。我们在这里谈论的是 90 分钟的视频。那么我们需要多少空间来存储 90 分钟的视频呢?
1194393600 bits for 1 second * 60 seconds in a minute * 90 minutes = 6449725440000 bits
让我们让这个数字易于理解:
size = 6449725440000 bits
= 806215680000 bytes
= 787320000 kilobytes (assuming 1024 bytes in a kilobyte)
= 768867.1875 megabytes (assuming 1024 kilobytes in a megabyte)
= approx. 750 gigabytes (assuming 1024 megabytes in a gigabyte)
750 GB 来存储一部电影??
正确看待 750 GB
如果您想在一个非常好的 SSD 上存储价值 750 GB 的数据,那么我们假设购买一个三星 Evo SSD 驱动器(每个售价 250 美元)。有人会花 250 美元来存储一部电影吗?现在您可能会争辩说我们可以使用更便宜的存储技术,但是,这不是我们在这里试图提出的重点。
视频存储实际上很昂贵,这就是为什么该行业不断创新以提出更新的算法和技术,以在不影响视频质量的情况下将电影缩小为更易于管理的尺寸。
想想你手机上的 Netflix 应用吧。Netflix 为您提供了将电影下载到手机上的选项,这样您在离线时也可以观看。您可以下载一整部电影(事实上很多电影)并且仍然不会完全占用手机的内存。文件大小的大幅减少归功于视频压缩。
视频压缩是一门艺术还是一门科学?
视频压缩是一门科学,因为它具有非常精确的公式和算法,这些公式和算法是在世界各地的实验室中发明的,并不断经过测试和改进。
另一方面,视频压缩也是一门艺术,因为 对 视频质量的感知是主观的,不同的人对视频质量的感知也不同。
正如我们将在视频压缩系列的后续文章中看到的那样,当您尝试减小视频文件的大小时,质量会下降。对一个人来说,图像可能看起来更清晰,而站在他旁边的人可能认为柔化图像会使图像变得可以忍受。这种满足复杂“视觉品味”的需求使视频压缩既是一门科学又是一门艺术。
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。