我应该为 HTML 使用哪种视频格式/编解码器<video>来支持实际最新的主要浏览器?



我看到了其他关于同一主题的问题:

  • 应该使用哪些HTML5视频编解码器
  • 我应该使用哪种视频和音频格式/编解码器

但他们都很老了,在这个问题上,我认为更新信息是至关重要的。

我现在使用video/webm;codecs=vp9,但我在一些浏览器上遇到问题

那么,我应该提供什么格式/编解码器版本的视频来支持Windows、Linux、Mac、Android和iOS中主要浏览器的最新版本呢?

我在浏览器中生成视频,它自己使用MediaRecorder,所以如果可以使用此系统生成建议的格式/编解码器,这将为我节省在服务器上重新编码的额外步骤。

如果你有ffmpeg命令配置来生成格式/编解码器,这也会对我有所帮助

正如@Offbeatmultural在他/她的评论中建议的那样,我们可以在这里看到视频编解码器的实际兼容性:

  • https://caniuse.com/?search=video

但那里的信息量巨大,很难在特定的答案中消化。

我们来自developer.mozilla.org的朋友有一些具体的建议,我希望他们能更新:

  • 使用视频VP9编解码器和音频Opus编解码器的WebM容器
  • MP4容器和AVC(H.264(视频编解码器,最好使用AAC作为音频编解码器

结果:

<video controls>
<source src="video.webm" type='video/webm; codecs="vp9, opus"'>
<source src="video.mp4" type='video/mp4; codecs="avc1, aac"'>    
</video>

以下是生成此类文件的ffmpeg最基本的配置:

# Webm
ffmpeg -i #INPUT -c:v libvpx-vp9 -c:a libopus video.webm
# MP4
ffmpeg -i #INPUT -c:v libx264 -c:a aac video.mp4

最新更新