2014-03-18 39 views
4

我的页面上有一个HTML5视频元素,它的缩放比例是填充整个背景的想法,它会在播放时循环。这在Chrome中运行正常,但Safari和Firefox在循环中有结尾。在Firefox中这是一个好时间。有任何想法吗?循环中的HTML5视频口吃?

这里是我的视频播放器的标记:

<video id="vid" preload="auto" autoplay loop onended="this.play();"> 
    <source src="vid.mp4" type="video/mp4"/> 
    <source src="vid.webm" type="video/webm"/> 
</video> 

我已经尝试了一些东西,比如完全用JS控制播放,而不是依赖于浏览器来弄明白。但总会有口吃。我不认为这是预加载的问题,因为如果我在本地执行所有操作,视频立即加载(显然),但仍然存在相同的循环。这只是这些浏览器固有的问题吗?

我很想创建视频的两个实例,并在每次完成后简单地用JS切换它们。它会很脏,但我不确定我的其他选项。

+0

您是否找到了解决此问题的一些解决方法?我面对同样的事情。 –

+0

不幸的是,虽然我还没有看过它一段时间。我做了一些环顾四周,我发现的大多数例子基本上都存在这个问题,如果你只是坐着看了他们足够长的时间。 我发现的一个技巧是,如果您先使用第一帧的背景图像,然后在页面加载更多后添加视频(因此您不会通过流式传输此视频来延迟页面加载),但它在某种程度上更容易原谅。 但是除了潜在的JS修复(通过基于时间或其他东西的JS重新启动它),我从来没有找到一个好的解决方案。 – dougoftheabaci

回答

0

我有这个问题,我实际上通过将webm源放在mp4源代码之前来修复它。这样它首先尝试加载webm视频格式,并且在我测试它时没有口吃。 mp4和ogv文件在Firefox中都有断断续续的情况,它让我疯了,所以当webm文件看起来像预期的那样工作时,我感到非常惊讶。

<video id="vid" preload="auto" autoplay loop> 
    <source src="vid.webm" type="video/webm"/> 
    <source src="vid.mp4" type="video/mp4"/> 
</video> 
+0

标记为正确答案。我不确定当我与此战斗时,Firefox支持WebM。但是,这并不会让我感到惊讶。 – dougoftheabaci