使用 libx264 编码的文件可以在 Windows 8 上播放吗?

使用 libx264 编码的文件可以在 Windows 8 上播放吗?

我正在通过电子邮件发送一部电影。

使用 ffmpeg 选项编码的文件是否libx264可以在无需任何外部软件的情况下在 Windows 8 中本地播放?

ffmpeg -i in.avi -vcodec libx264 out.avi

答案1

总结:

  • Windows 8 可以播放 x264 编码的视频,只要它是 MP4 或 3GP 文件即可(参考
  • AVI 文件可能可以工作,但不必这样做,因为 AVI 不支持 x264 提供的所有内容。

如需更多信息,请参阅我在此处发布的答案:什么是编解码器(例如 DivX?),它与文件格式(例如 MPG)有何不同?这远远超出了我在这里写的内容,但是对于这个问题,我们可以稍微缩小一点范围。

什么是 x264?

首先,libx264FFmpeg 库允许 FFmpeg 使用x264 编码器. x264 又只是一个编码器采用 H.264 编解码器标准对视频进行编码 - 也称为MPEG-4 第 10 部分 AVC/ 高级视频编码。编解码器(“编码器/解码器”) 只是指定了编码器和解码器必须遵守的标准。

因为只有一个编解码器标准,所以除了 x264 之外还有许多其他 H.264 编码器,例如主概念甚至是 FFmpeg 内置的。但是 x264 是免费的、开源的、非常高效的并且质量很好,这就是它被如此频繁使用的原因。

为什么我们需要容器?

x264 只能编码实际视频。理论上,您可以将其存储在文件中.264,它将是有效的视频位/字节流。没有音频,没有字幕等。但通常,您不想只看没有音频的视频。这就是为什么我们需要将视频、音频和字幕合并到一个文件中。这个文件称为容器,因为它包含所有单独的媒体轨道。

容器将根据视频和音频帧的显示时间戳 (PTS) 同步它们,以确保它们在同一时间显示。

目前流行的容器包括……

  • MP4是 MPEG-4 Part 14 的缩写,不要与以下视频编解码器标准混淆MPEG-4 第 2 部分视频(例如 XviD 编码)或 MPEG-4 Part 10 视频(我们上面讨论过的 H.264,例如 x264 编码)。

  • 美军,是 Matroska 的缩写,这是一种可以容纳几乎所有你输入的内容的容器。

  • AVI,一种非常古老的容器格式,几乎任何地方都支持,但本身支持的功能并不多。除非万不得已,否则不要使用它。

总结一下:编解码器存储在容器内。编解码器代表实际的媒体,容器只是将它们捆绑到一个文件中。你可以将它们都称为“格式”,但不要使用该术语,因为它含糊不清。

答案2

x.264 是 H.264 / MPEG-4 Part 10 编码器。支持 H.264 编解码器:

在此处输入图片描述

来源:构建丰富且可扩展的媒体平台 - MSDN 博客

答案3

应该默认在 Windows Media Player 中播放(x.264 是受支持的 MPEG-4 Part 10 / AVC 编码器)。但是,Windows Media Player 不一定是 Windows 默认附带的(我认为这是由于欧洲的反垄断问题)。

与您的问题不太相关,但为什么不考虑在线托管文件(YouTube、Picasa/Google+、Flickr)?那么您的收件人只需要一个网络浏览器。

相关内容