HTML5视频 - 最大播放率是多少?

时间:2015-06-22 01:12:14

标签: html5 google-chrome firefox html5-video

您可以设置HTML5视频元素的播放速率:

var player = document.getElementById("video");
player.playbackRate = 100;

w3规范没有定义限制。 Chrome和Firefox中<video>元素的最大播放率是多少?如果播放速率不依赖于浏览器,那么它决定了什么呢?

研究

MDN HTML Media Element表示某些浏览器会停止播放0.25x - 4x播放范围之外的音频。它没有说明视频元素是否会继续播放视频。

YouTube的播放器支持的速度介于0.25x - 2x之间。这是一个Flash播放器,而不是HTML5视频元素,我对它不感兴趣。

就个人而言,我在计算机上本地创建了一个测试页面,其中包含<video>元素和本地视频文件。我可以将播放设置为任何内容(例如100),但视频的播放速度似乎不会超过~5x。我实际上无法检查播放速度,因为它只返回我设置的值“100”。

3 个答案:

答案 0 :(得分:23)

2017年11月30日更新,以反映浏览器行为的最新变化

<强>火狐:

根据源代码,Firefox应将有效播放率限制在 0.0625 - 16.0 范围内。在我的测试中,它不再遵循这一点,并且根本不会限制播放速率。但是,如果播放速率低于 0.5 ,或者高于 4.0 ,它仍会将音频静音。

来源 - dom\html\HTMLMediaElement.cpp

上的Firefox源代码

<强>铬:

Chrome会将播放速率限制在 0.0625 - 16.0 的范围内。在我的测试中,如果速率低于 0.5 ,或高于 4.0 ,它也会使音频静音。

来源 - third_party/blink/renderer/core/html/media/html_media_element.cc

上的Chromium源代码

答案 1 :(得分:1)

技术上应该没有限制。

但是,在一秒钟内播放30秒长的视频的原因在哪里?

答案 2 :(得分:0)

最低速度:0.0625x

最大速度:16x

来源:在 Google Chrome 上反复试验

document.getElementsByTagName("video")[0].playbackRate = 2.5;