为什么我们需要在<video>标记内提供.webm文件扩展名?

时间:2015-05-18 08:35:54

标签: javascript html5 video cross-browser

我需要在浏览器上显示一些视频。目标浏览器是IE8-above,firefox和chrome。 经过一些调查后我发现,http://v4e.thewikies.com/可以用来生成带有后退选项的视频标签。

所以我生成了这个标签,

FOR EACH vehicles WHERE vehicles.wind CONTAINS "keyword1"
                     OR vehicles.wind CONTAINS "keyword2"
                     OR vehicles.wind CONTAINS "keyword3"
                     OR ...
                     OR vehicles.wind CONTAINS "keywordn":

    ....
END.

从这个标签,我理解的是,我们的浏览器将使用html5视频标签,如果它支持,否则它将回退使用对象标签。

但为什么我们还需要为同一视频提供.webm格式,即

<video controls="controls" width="640" height="360"> <source src="http://localhost/abc.mp4" type="video/mp4" /> <source src="http://localhost/abc.webm" type="video/webm" /> <object type="application/x-shockwave-flash" data="http://flashfox.googlecode.com/svn/trunk/flashfox.swf" width="640" height="360"> <param name="movie" value="http://flashfox.googlecode.com/svn/trunk/flashfox.swf" /> <param name="allowFullScreen" value="true" /> <param name="wmode" value="transparent" /> <param name="flashVars" value="controls=true&amp;src=http%3A%2F%2Flocalhost%2Fabc.mp4" /> <span title="No video playback capabilities, please download the video below">Big Buck Bunny</span> </object> </video>

是否存在mp4不起作用但.webm文件正常工作的特定情况?

1 个答案:

答案 0 :(得分:0)

跨平台和浏览器的视频支持非常分散且不断变化 - 您的问题的简单答案是您已正确理解并且确实存在不支持mp4和webm的情况。

例如在撰写本文时,Firefox仅提供有条件的支持(条件是第三方解码器可用),以及具有“高”的mp4文件。配置文件无法在某些低规格移动设备上运行。 mp4格式拥有相当多的专利,并非所有专利都是免费许可的 - 这是一些问题的背后。

有一些有用的资源可以查看支持的内容 - 因为它不断变化,因此在构建服务时需要检查这些内容: