如何使用JWPlayer 5.4搜索()然后暂停()

时间:2011-01-23 00:07:56

标签: jwplayer seek

有没有人知道如何让jW PLayer v5.4(Flash渲染或HTML5渲染)在seek()命令后暂停?

当用户点击细粒度控制按钮(或使用向左或向右箭头键)时,我试图让视频向前或向后步进0.01秒。这样他们就可以更精确地捕捉帧抓图。

我不确定这是否可能,但我尝试了一些没有运气的事情。如下:

var stepTo = jwplayer("video_player").getPosition() + 0.01;

jwplayer("video_player").seek(stepTo).onComplete(function(){
    jwplayer('video_player').pause();
});

jwplayer("video_player").pause().seek(stepTo);

jwplayer("jwplayer_container").seek(stepTo).pause();

jwplayer("video_player").pause().play().pause();

我也看到'快捷方式'插件具有此功能,但该插件尚未与v5.4兼容。

感谢您的帮助。

3 个答案:

答案 0 :(得分:4)

@AJB -

a ticket添加为5.6播放器安排的“onSeek”事件。与此同时,最好的方法可能就是这样:

jwplayer("video_player").seek(stepTo);

var pauseOnSeek = true;
jwplayer.onTime(function() {
   if (pauseOnSeek) {
      this.pause();
      pauseOnSeek = false;
   }
});

如果onTime()事件在搜索完成之前触发,您可以通过在定义onTime()处理程序之前设置超时来破解它。

答案 1 :(得分:0)

使用JW Player 6,您可以执行以下操作,以便在搜索后暂停视频:

jwplayer("vidPlayerDiv").onSeek(function () { jwplayer("vidPlayerDiv").pause(); });

答案 2 :(得分:0)

这是PabloS代码的一个小变化:

jwp = var player = jwplayer('target').setup({
    file: '/some-file.mp3'
});

jwp.seek(position);

var pauseOnSeek = true;
jwp.onTime(function () {
    if (jwp.getState() === "PLAYING" && pauseOnSeek) {
        this.pause();
        pauseOnSeek = false;
    }
});

我必须编写更改源媒体文件的代码而不从头开始播放视频。我想在暂停时处理切换视频。当我在seek回调中使用pauseonSeek时,由于视频仍在缓冲,因此无效。暂停onTime回调就像上面的代码一样,就像魅力一样。