我的测试页面中有以下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
。
任何想法?
答案 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的行为可能有所不同,具体取决于其他设置。希望有效。