我刚刚通过ffmpeg编写了一个带有自动转换功能的跨浏览器视频播放器,它在所有浏览器中运行良好。由于它们都显示不同的控件,我认为我会使用VideoJS来设置它们的样式。
这是我的演示页面: http://www.animero.com/2012/produktioner/jakobsson-pr-vegibar/
在支持html5视频标记的所有现代浏览器中都应显示蒙皮控件。虽然,我的问题是IE8。后备似乎不起作用,因为我只得到一个黑色的盒子,上面写着“Movie not loaded ...”但是音频仍在播放。
这是我的标记:
<div class="video-js-box">
<video id="my_video_1" class="video-js vjs-default-skin" width="790" height="444" poster="<?php echo $videoFiles['poster']; ?>" preload autoplay controls data-setup="{}">
<source src="<?php echo $videoFiles['mp4']; ?>" type="video/mp4" />
<source src="<?php echo $videoFiles['ogv']; ?>" type="video/ogg" />
<object id="flash_fallback_1" class="vjs-flash-fallback" width="790" height="444">
<embed width="790" height="444" src="<?php bloginfo('stylesheet_directory'); ?>/spelare.swf?image=<?php echo $videoFiles['poster']; ?>&video=<?php echo $videoFiles['flash']; ?>" type="application/x-shockwave-flash" wmode="transparent"></embed>
</object>
</video>
</div>
当我关闭VideoJS时,一切都很棒,而在IE8中,我的flash播放器效果很好。有人可以帮我这个吗?
提前致谢, 乔纳森
答案 0 :(得分:2)
您可以下载Video.js源并将其托管在您自己的服务器上,或使用免费的CDN托管版本。现在经常建议将JavaScript放在end body标签()而不是head()之前,但Video.js包含一个'HTML5 Shiv',它需要在较旧的IE版本的头部,以尊重视频标签有效的元素。
注意:如果您已经在使用像Modernizr这样的HTML5 shiv,您可以在任何地方添加Video.js JavaScript,但请确保您的Modernizr版本包含视频shiv。
来源:http://videojs.com/docs/setup/
有效!