html - 哪些用户代理支持 HTML5 <video> 标签中的 mp4/H.264 视频?

标签 html html5-video mp4 h.264 user-agent

哪些用户代理支持 HTML5 video 标签,使用 mp4 作为容器和 H.264 作为编解码器?有人为此提出了正则表达式吗?

更新: 谢谢大家的评论。我忘了说,我最好在后端执行此操作,这意味着像 modernizer 这样的东西是行不通的。

最佳答案

桌面:

  • IE6-8:无
  • IE9-10:H.264
  • Chrome:WebM 和 H.264
  • Firefox 3.6:Ogg Theora
  • Firefox 4+: WebM
  • 歌剧:WebM
  • Safari :H.264

手机:

  • iOS:H.264
  • Chrome Android:H.264 和 WebM
  • Firefox Android:H.264 和 WebM
  • 适用于 Windows Phone 7.5 - 8 的 IE:H.264
  • 歌剧 12:H.264

参见 HTML5 Test了解更多信息。注意:Android 的默认浏览器(称为“浏览器”)没有列出对任何编解码器的支持,但我认为这取决于手机供应商来决定,我很确定你可以保证 H.264 作为硬件加速该编解码器往往内置于移动处理器中。同样关于 Firefox for Desktop,它获得了 H.264 支持 later this year .

编辑:以上支持矩阵于 2013/03/22 更新


因此,您需要支持的两种视频格式是 WebM 和 H.264。但 H.264 似乎正日益成为网络视频的实际标准。

不要使用用户代理嗅探,这是出了名的不可靠且容易出错。有更好的方法来检测 <video>标签支持。

例如,看看 Modernizer这让你写:

if (!Modernizr.video)
{
    // Implement some Flash fallback
}

或者,如果您明确检测到特定的编解码器...

if (!Modernizr.video || (Modernizr.video && !Modernizr.video.h264))
{
    // Flash fallback here
}

关于html - 哪些用户代理支持 HTML5 <video> 标签中的 mp4/H.264 视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4995829/

相关文章:

css - 使用 CSS 垂直展开 block (模拟纸页)

javascript - 如何为 html5 动态视频提供正确的格式?

c# - 上传任何视频并在 .net 中在线转换为 .mp4

javascript - 在移动浏览器上自动播放视频元素

javascript - html5视频播放器与视频js的关系

android - 在 Internet 上托管的 MP4 视频无法在 Android 操作系统上下载和播放 当大小大于 1,7MB 时

android - 如何在 Android webview 中打开 mp4 视频?

html - 为 Chrome 设计一个具有精确宽度的表格

jquery - 如何用另一个 div 包裹一个 div - jQuery Wrap

javascript - 在 BackboneJS 中渲染 View 并滚动到顶部