HTML5视频循环无法在Chrome中运行(来自Cloudfront)

时间:2012-12-20 12:51:39

标签: html5 google-chrome video amazon-cloudfront

我的测试页面中有以下HTML5视频元素:

<video width="1280" height="720" loop="loop">
  <source src="http://d1dsyb3mv0b0i6.cloudfront.net/test/lines.mp4" type="video/mp4" />
  Your browser does not support the video element.
</video>

我希望它循环播放,因此我设置了loop="loop"(我也尝试了loop),但由于某些原因,Chrome 23在结束时不会重新启动视频。我特意将视频移动到Cloudfront下载发行版以获得服务器上的部分内容请求支持,据说Chrome需要支持循环播放,但不幸的是,这似乎没有什么区别。请注意,在Safari中一切正常。然后,Safari甚至可以循环播放本地视频文件,因此它不需要具有部分内容请求支持的服务器。

它似乎与Cloudfront相关,因为这部电影确实正确循环:http://media.w3.org/2010/05/sintel/trailer.mp4

任何想法?

3 个答案:

答案 0 :(得分:2)

您需要在S3对象上正确设置content-type元数据,以反映文件的正确MIME类型。与其他浏览器相比,Chrome往往更加挑剔。

答案 1 :(得分:0)

我已将trailer.mp4上传到Cloudfront(S3)并且 工作。这个mp4甚至可以在本地文件系统中运行,所以不像我想的那样,我不需要从支持部分内容请求的服务器播放视频。因此,lines.mp4视频似乎与trailer.mp4视频有所不同。我很好奇,发现这个视频不能让Chrome视频无法循环播放,而它在Safari中可以很好地循环...

答案 2 :(得分:0)

循环为我工作,但尝试用命令替换循环:

autoplay onended="this.currentTime=0" 

autoplay onended="this.load()"

第二个选项会在重新加载期间导致闪烁。第一个顺利运行,但currentTime的行为可能有所不同,具体取决于其他设置。希望有效。