use*_*686 100 video codec file-format video-codecs
我很困惑......音频/视频编解码器(显然是“编码器/解码器”的简写,有点像“调制解调器”实际上是“调制器/解调器”)和音频/视频编解码器之间有什么区别?视频格式?
(我什至使用了正确的术语吗?)
即:说某事是“MPEG-4”和说某事使用“DivX”编解码器有什么区别?为什么 Windows Media Player 有时运行.mpg文件,有时不运行?
另外,以下哪些是编解码器,哪些是文件格式,哪些都不是?
slh*_*hck 161
一些主要定义:

如您所见,我们必须在这里解释一些事情。
甲编解码器是用于短编码器/解码器,它基本上只是意味着:由编码器产生的数据总是可以通过适当的解码器进行解码。这恰好对视频、音频有效,但您也可以考虑加密(编码器需要适当的解码器来显示加密消息)。
如今,当指定视频编解码器时,参与其中的机构通常只指定标准的语法。例如,他们会说:“比特流格式必须是这样的”、“0x810429AAB这里的将被翻译成那个”等。他们通常提供参考编码器和解码器,但是然后如何编写编码器以匹配这样的格式完全取决于制造商。
这就是为什么您会为相同的编解码器找到如此多的编码器,其中一些甚至是商用的。
在我们混淆术语之前,让我们举一个例子。考虑H.264的情况。该标准的名称是 H.264 – 这不是实际编码器的名称。Mainconcept是一个非常好的商业编码器,而x264是一个免费的开源编码器。当然,两者都声称提供良好的质量。
您可以优化编码这一事实本身就是一场竞争。两种编码器都将提供一个标准化的比特流,它始终可以由符合 H.264 的解码器进行解码。
所以,总而言之,让我们说编码器将:
然后比特流被多路复用到一个容器中。
解码器将:
它们都符合编解码器标准。就这样!
如今,您可能只会找到使用我将在下面提到的编解码器编码的视频。有趣的是,几乎所有这些都是由电影专家组(MPEG) 创建的。但是还有一些其他的免版税的编解码器,例如由 Google 或开放媒体联盟创建的编解码器,它们是 MPEG 标准的竞争对手。
请注意,“MPEG”可以指编解码器和容器,如下所示。这增加了混乱,但只知道“MPEG”本身并不意味着什么,例如“我有一个 MPEG 格式的文件”是非常模糊的”。
MPEG-2 已经很老了。它的第一个公开版本是从 1996 年开始的。MPEG-2 视频主要用于 DVD 和电视广播,例如 DVB-T 或卫星,以及兼容性很重要的传统应用程序。MPEG-2 视频大多位于.MPG容器中。
这可能是 2000 年代中期主要用于为网络编码视频的一种,但在此期间已被取代。它以实用的文件大小提供良好的质量,这意味着您可以将一整部 90 分钟长的电影刻录到 600 MB 的 CD 上(而使用 MPEG-2,您需要一张 DVD,请在此处查看我的答案)。它不再适用于 HD 或 4K 内容。
一些输出 MPEG-4 Part 2 视频的编码器是DivX、其开源的 ripoff XviD和Nero Digital。
MPEG-4 Part 2 视频大多出现在AVI容器中,但MP4也经常出现。
这也称为MPEG-4 高级视频编码 (AVC)或H.264;它是当今最常用的编解码器。它以较小的文件大小提供良好的质量,因此非常适合用于 Internet 或移动设备的各种视频。从手机到摄像机,您几乎可以在所有现代应用程序中找到 H.264。在蓝光光盘上,视频现在以 H.264 编码。
它的一些编码器是:x264、NVENC(来自 NVIDIA)、Mainconcept。视频大多采用MP4、MKV或MOV容器。
也称为 MPEG-H Part 2,这是 MPEG-4 Part 10 / AVC / H.264 的继任者。与 H.264 相比,它的目标是更高的分辨率(高达8K),并且可以提供高达 50% 的编码性能(在质量与比特率方面)(例如,参见本文)。
该标准于 2013 年发布,慢慢地,编解码器开始越来越多地使用,例如用于 IPTV 或在线视频传输。Apple 还使用 HEVC在 iOS 上存储视频和图像(使用HEIF)。然而,与 HEVC 相关的多个专利池这一事实使许多公司(几乎所有公司(除了苹果公司))转向免版税的替代方案。并非所有浏览器都原生支持HEVC ,因此无法用于网络流媒体。
最著名的编码器是x265。还有NVENC。视频通常放在MP4容器中。
VP9(VP8的继任者)是主要由Google开发的编解码器。它是开放的、免版税的,并在许多浏览器中实现。它的质量几乎和 HEVC 一样好,有时甚至更好(参见Netflix 的这篇论文)。VP9 是您在支持它的浏览器上观看 YouTube 时所获得的。
VP9 可以使用libvpx编码器进行编码,它通常出现在WebM或MKV容器中。
一些公司联合起来形成了 HEVC 更强大的竞争对手——但作为一种免版税的替代方案。AV1将是 VP9 的继任者,它基于应该成为 VP10 的内容。它得到了开放媒体联盟(由亚马逊、思科、谷歌、英特尔、微软、Mozilla 和 Netflix 创立)的支持。在此处阅读更多相关信息。
所述libaom编码器可以被用来生成位流AV1,但它仍然是实验性的。
到目前为止,我们只解释了原始“比特流”,它基本上只是真正的原始视频数据。您实际上可以继续使用这种原始比特流观看视频。但在大多数情况下,这还不够或不切实际。
因此,您需要将视频包装在容器中。有几个原因:
由于所有这些原因,发明了容器格式,一些简单,一些更高级。他们所做的就是将视频比特流“包装”到另一个比特流中。
容器将根据其演示时间戳(PTS)同步视频和音频帧,以确保它们完全同时显示。如有必要,它还将负责为流媒体服务器添加信息,以便流媒体服务器知道何时发送文件的哪个部分。
让我们来看看一些流行的容器。
您会发现大部分视频都包装在以下容器中。还有其他不太受欢迎的,但正如我所说,主要是那些:
音视频交错——这是最基本的容器,它只是用来交错音频和视频。它写于 1992 年,今天仍在使用,但被认为是遗留的,所以不要再使用它了。
也称为MPEG-4 Part 14,基于 QuickTime 文件格式。这是 H.264 视频的首选格式,但它也包含 HEVC、MPEG-4 Part 2 和 MPEG-2。
这个容器也可能只包装音频,这就是为什么你会发现这么多 .mp4 文件不是视频而是AAC 编码的音频,也在 .m4a 文件中(只是一个不同的扩展名)。扩展名 .m4v 通常用于视频比特流。
Matroska Video (MKV) 是一种开源且免费的文件格式,现在很常见,因为它基本上支持任何编解码器,从 H.264 到 VP9,当然还有许多音频编解码器。
WebM 基于 MKV,主要用于 VP9 视频和 Opus 音频——当使用这些编解码器时,它是网络流视频的首选容器。
Ogg 容器是 Theora 视频编解码器(和 Vorbis 音频编解码器)的首选容器,也是由 Xiph.Org 基金会创建的。它也是免费和开源的(就像编解码器一样)。
Flash 视频格式由 Adobe 创建,用于其流媒体应用程序。它不再使用那么多了,因为流媒体的完成方式在过去几年中发生了重大变化。
另外,以下哪些是编解码器,哪些是文件格式,哪些都不是?
libavcodec和libavformat库来创建编解码器和容器。您今天找到的大多数视频工具都是基于它的。旁注:
我什至使用了正确的术语吗?
我想曾经更喜欢专门使用“编解码器”和“容器”而不是“格式”以避免误解。理论上,格式可以是任何东西,因为编解码器和容器都指定了一种格式(即数据应该如何表示)。
话虽如此,FFmpeg术语将使用“格式”作为容器。这也是因为以下之间的区别:
libavcodec,用于编码/解码的库libavformat, 容器库| 归档时间: |
|
| 查看次数: |
26686 次 |
| 最近记录: |