使用video.js更改视频播放速度

时间:2013-10-01 09:13:26

标签: html5-video video.js

是否有任何现有的插件可以使用video.js播放器更改视频的播放速度?如果没有,我如何添加新的插件和新的控制按钮?

提前致谢。

3 个答案:

答案 0 :(得分:8)

来自videojs v.4.6.0,您可以传递data-setup的JSON参数,以便将播放速度选项添加到视频播放器中:

<video id="my_video_1" class="video-js vjs-default-skin" controls 
preload="auto" width="640" height="268" 
data-setup='{ "playbackRates": [0.5, 1, 1.5, 2] }'>

演示:http://jsbin.com/vikun/1/edit?html,output

致谢:https://stackoverflow.com/a/24767026/1066234

注意:您必须对data-setup中的参数使用双引号。

-

有帮助:如果您需要在视频播放器准备就绪后更改速度(Jquery),请使用:

var video = videojs('videoplay', options);

video.ready(function() {
    // faster speed initially
    this.playbackRate(1.5);
});

答案 1 :(得分:2)

我也有同样的问题。我刚刚发现:

videojs('my-player', {
  playbackRates: [0.5, 1, 1.5, 2]
});

请参阅videojs docs

答案 2 :(得分:0)

var player = videojs('videoplay');
player.ready(function() {
   var _this = this
   var playbackRate = $("#playbackRate").val();
   var speed = parseFloat(playbackRate);

   var volume = parseFloat($("#volume").val()/100.0); //[0,100]

   setTimeout(function() {
       _this.playbackRate(speed);
       _this.volume(volume); //work for audio
   },20);
});
player.src('/media/'+data.uuid+'.m3u8');
player.play();

上面的代码在生产环境中对我有效,很难理解为什么我们要在播放音频流之前延迟一会儿。