什么是视频编码格式?| 视频格式

视频编码格式是针对不同平台和设备进行优化的数字视频文件的示意图。每种视频格式均由音频编解码器、视频编解码器和容器构成。

学习目标

阅读本文后,您将能够:

  • 了解什么是视频编码格式
  • 了解有损和无损压缩对视频交付的影响
  • 比较常见视频编码格式

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是视频编码格式?

视频编码格式也称为视频文件格式,是针对不同平台、程序和设备优化数字视频文件的方法。视频编码格式有许多种类,但每一种都包含两个主要组成部分,即编解码器和容器。编解码器和容器指定了存储、传输和观看未压缩视频输入的方式。在流式传输中有一点很重要,编码格式应与尽可能广泛的设备兼容,以便所有用户都可以观看流视频。

正确选择视频格式取决于三个主要因素:存储可用性、视频输出质量,以及与不同视频播放器或程序的兼容性。

例如,假设鲍勃想要将专业视频作品集上传到自己的网站。他需要考虑上传带宽限制和视频本身的整体质量。他可以选择 WebM,这是受到 Android 设备、大多数 Web 浏览器和 HTML5 流视频网站(例如 YouTube)支持的免版税文件格式。借助 WebM,他可以压缩自己的视频文件,使其能流畅地播放而不明显损失视频质量。

另一方面,爱丽丝有数小时的家庭视频,想要转换成广泛使用的数字视频格式来妥善保管。她打算将大多数视频文件存储在硬盘上。她可以选择 MPEG-4 Part 14(MP4),这种格式不仅可以在压缩后保留视频质量,而且很可能在未来几年内保持与大多数程序和设备的兼容。

视频编码如何工作?

视频编码是将未压缩的视频输入转换成可由各种设备存储和播放的形式的过程。视频编码包含两个主要过程:压缩和转码。

压缩(或丢弃多余的数据)可大幅减小视频文件的大小,从而使其更易于管理。若无适当的压缩,大多数文件会过于巨大,无法轻松上传、快速加载或在用户设备上流畅播放。

转码是指从一种视频格式到另一种格式的音频与视频整体转换过程。它可确保视频文件与其使用的视频播放器和/或平台兼容。若无转码,用户将根本无法观看视频文件。

点播流视频经过编码,以便通过互联网发送并在各种用户设备上播放。在实时流式传输期间,视频流被实时分段、压缩和编码。

用户可以使用不同的视频播放器在不同的设备上接收编码后的实时流。设备对分段的视频进行解码和解压缩,然后播放视频。

什么是编解码器?

编解码器(编码器/解码器)是一种用于压缩和解压缩数据的方法,以便于不同的应用程序可以轻松地传输和接收数据。音频和视频文件分别使用不同的编解码器来压缩,但它们通常以相同的方式工作。

编解码器使用有损压缩或无损压缩对文件进行编码。有损压缩可简化视频文件中的数据,并且仅保留基本部分。这就是为什么使用有损压缩的视频可能看起来像素化或“模糊”的原因。譬如,弗兰克决定向妹妹发送他的玫瑰园的视频:有损压缩可准确显示每一朵玫瑰,但可能为花朵选择单一的粉色阴影,而不是描绘每个花瓣中粉色的细微变化。

无损压缩通过精确复制每段数据来保留原始视频文件的高质量。弗兰克或许更愿意向妹妹发送花园的高清视频,捕捉每一瑰花蕾上每种粉色的阴影,但最终的文件可能过大,无法通过短信息或电子邮件发送。

有损压缩和无损压缩都各有优缺点。有损压缩提供较小的文件大小和较低的视频质量,无损压缩则提供文件较大的高质量文件复制。

什么是容器?

容器在单个视频文件中组合编码的音频流(音频编解码器)、编码的视频流(视频编解码器)和元数据。元数据告诉视频播放器如何协调不同的音频和视频编解码器,还可能提供其他元素,例如字幕或备选音频流。

每种容器支持不同范围的视频编解码器。某些容器只能与一种编解码器和视频播放器搭配,极大地限制了播放选项。其他容器则与许多类型的视频编解码器和播放器兼容。

通常,视频文件扩展名是使用它们所用的容器来命名的,而不是它们所包含的音频和视频编解码器。(例如,MP4 视频文件实际上是 MP4 容器。)只有编解码器和容器都与视频播放器兼容,视频文件才能正常播放。

最常见的视频编码格式有哪些?

视频编码格式多达十几种,而且并不都与相同的平台、浏览器和设备兼容。以下是五种最常见的视频格式:

MP4:MPEG-4 Part 14 (MP4) 是由运动图像专家组开发的视频文件格式。它将音频和视频分别压缩,从而使 MP4 文件在压缩后保持较高的视频质量。大多数浏览器和 iOS/Android 设备都与 MP4 文件兼容。

MOV:QuickTime Movie (MOV) 是 Apple 开发的视频文件格式。尽管它可以在 Mac OS 和Windows OS 上运行,但仅兼容 QuickTime 视频播放器。它可以保留视频质量,但文件压缩程度不能与其他常见视频格式(例如 MP4)媲美。

AVI:音频视频交错 (AVI) 是Microsoft 开发的视频文件格式。它是年代最久的视频文件容器规范之一。AVI 与许多不同的编解码器搭配使用,这可能会影响不同操作系统和浏览器对它的支持程度。它优先考虑视频质量而不是压缩程度,这意味着视频文件更大,但总体质量更好。

FLV:Flash 视频格式 (FLV) 是 Adobe Flash 开发的视频文件格式。FLV 的明显优势在于它能在不严重降低视频质量的前提下压缩视频文件。但与其他文件格式相比,它在设备和操作系统兼容性方面要差得多:尽管大多数浏览器和 Android 设备都支持它,但它不能用于在 iPhone 或 iPad 等 iOS 设备上播放任何视频文件。浏览器已放弃对 Adobe Flash 的支持,因为它被认为是不安全的,并且 Adobe 自 2020 年 12 月 31 日起不再支持 Flash。

WebM:WebM 是 Google 开发的一种视频文件格式。它是开放标准 Matroska 视频容器(MKV)格式的子集,此格式可以高度适应大多数视频和音频编解码器,而且与广泛的平台和设备兼容。WebM 是 MP4 的 Web 友好型开源替代品,可在压缩后保持高视频质量。HTML5 支持 MP4 和 WebM。

Cloudflare 如何支持不同的视频格式?

Cloudflare Stream 支持许多视频编码格式,如 MP4、MKV、MOV、AVI、FLV、MPEG-2 TS、MPEG-2 PS、MXF、LXF、GXF、3GP、WebM、MPG 和 QuickTime 等。Cloudflare Stream 由覆盖全球 310 个城市的数据中心网络提供支持,不仅提供速度快、质量高的视频播放,更结合了视频存储、编码和可自定的视频播放器。