我经营一个网站,其中包含大约700个参考视频(不,它不是色情片 - 让你的思绪脱离阴沟:-))。
视频目前采用FLV格式。我们使用JWPlayer渲染这些视频。 IIS6托管。一切正常。
据我了解,H.264(不是FLV,可能不是OGG)是新兴的首选HTML5视频标准。今天,iPad真的只尊重H.264或YouTube。据推测,很快更多重要的浏览器将遵循Apple的主导并仅尊重HTML5标签。
好的,所以我想我可以弄清楚如何将现有视频转换为适当的H.264格式。有各种可用的工具,包括ffmpeg.exe。我还没有尝试过,但我不认为在摆弄编解码器设置后会出现问题。
我的问题更多的是关于容器本身 - 也就是说,计划所有用户的优雅过渡。渲染这些视频的最佳做法建议是什么?如果我只是使用HTML5标签,那么可能任何尚未支持HTML5的浏览器都不会看到这些视频。如果我通过JWPlayer或其他播放器以Flash格式呈现它们,那么它们将无法在iPad上播放。我是否必须在此处进行丑陋的UserAgent检测以确定要呈现的内容?
我知道JWPlayer支持H.264媒体,但播放器本身不是Flash组件,因此无法在iPad上播放?对不起,如果我不清楚,但我正在抓住一个优雅的过渡计划,这将适用于当前的浏览器,iPad和即将推出的HTML5浪潮。我不是视频专家,所以任何建议都会受到欢迎,谢谢。
答案 0 :(得分:8)
请注意Firefox不支持带有视频标签的H.264,因此如果您想要优雅的后备,那么您应该像下面那样呈现您的视频标签,并拥有该视频的OGG版本。
<video controls id="video" width="320" height="240" preload autobuffer >
<source src="http://mycdn.com/videos/vid1.ogg" type="video/ogg" />
<source src="http://mycdn.com/videos/vid1.mp4" type="video/mp4" />
<!--RENDERED ON BROWSERS WITH NO HTML5 VIDEO SUPPORT-->
<object width="320" height="240">
<param name="movie" value="myplayer.swf">
<embed src="myplayer.swf" width="550" height="400">
</embed>
</object>
<!---->
</video>
答案 1 :(得分:4)
我不确定这是答案还是仅仅是评论,但我真的需要挑战原始问题的一个假设:“大概很快,许多更重要的浏览器将遵循Apple的领先优势并仅尊重HTML5标签“。
这只是我无法看到的任何内容。
无论如何,要了解问题的真正含义:“我的问题更多是关于容器本身 - 也就是说,为所有用户规划优雅的过渡。渲染这些视频的最佳实践建议是什么”
HTML5视频标签支持命名多个源,因此如果浏览器不支持直接H,您可以将原生H.264视频作为“主要”和Flash播放器作为“后备”使用.264视频流。
<video>
<source src="../videos/primary.mp4" type="video/mp4" />
<object>
<param name="movie" value="fallbackplayer.swf">
<embed src="../videos/fallbackplayer.swf">
</embed>
</object>
</video>
答案 2 :(得分:3)
建议您阅读video for everybody以获得良好的跨浏览器实施。您也可以使用H.264 for Flash后备,但Lachlan表示您也应该使用Ogg进行渲染,以实现完全跨浏览器兼容性。
答案 3 :(得分:1)
每个浏览器中对视频编解码器的支持如下:
我还建议您使用Ogg Theora替代品。我知道你不关心磁盘空间,但是由于专利使用费和对专利巨魔的恐惧,这是我们一直坚持的情况。
答案 4 :(得分:1)
不直接回答您的问题,但doom9.org有很多关于视频转换/处理的精彩教程。可能对你有用
答案 5 :(得分:0)
由于Chrome实际上从未真正拔出插件以获得h264支持,因此Firefox也保留了该插件,并计划更好地支持该格式。
https://developer.mozilla.org/en-US/docs/HTML/Supported_media_formats (大约在页面的三分之一处)