使Flowplayer始终从cuepoint开始

时间:2017-06-28 02:24:02

标签: video flowplayer

早上好。我有一个带有提示点ex [5,10]的Flowplayer视频。在这里,我的视频从第5秒开始,在第10秒暂停。所以它有效。但是,如果我点击播放并允许视频结束,下一次(没有页面刷新)我播放视频,它从开始而不是第一个提示点开始。

我很欣赏一个提示或解决方案,如何让视频始终从第一个提示点开始播放,无需刷新页面

这是代码段

var merge = function (arr1, arr2) {

    var i, outObj = {}, keys = {};
    for (i = 0; i < arr2.length; i += 1) {
        outObj[arr2[i].name] = arr2[i];
        keys[arr2[i].name] = [i, 2];
    }
    for (i = 0; i < arr1.length; i += 1) {
        outObj[arr1[i].name] = arr1[i];
        keys[arr1[i].name] = [i, 1];
    }

    keys = Object.keys(keys).sort(function (a, b) {
        return keys[a][1] - keys[b][1] || keys[a][0] - keys[b][0];
    });

    return keys.map(function (x) {return outObj[x];})

};

谢谢:)

1 个答案:

答案 0 :(得分:0)

好吧,在考虑了一下之后找到了解决方案。我们的想法是,在视频结束后,我们只是寻求第一个提示点。通过仅添加几行来解决:

flowplayer(flowplayerObject, {
        hlsjs: {
          xhrSetup: function (xhr) {
            xhr.withCredentials = true;
          }
        },
        swf: ------,
        swfHls: -------,
        clip: {
          cuepoints:[videoStartTime,videoEndTime],
          sources: [
            {type: "application/x-mpegURL", src: -------l},
            {type: "video/mp4", src: -------}
          ]
        }
      }).one("ready", function (e, api, video){
        api.seek(parseInt(videoStartTime));
      }).on("cuepoint", function (e, api, cuepoint) {
         if (cuepoint.index === 1) {
          api.pause();
        };
      }).on("finish", function (e, api) {
        api.seek(parseInt(videoStartTime));
      });