Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video Flowplayer使用cuepoint在不同时间暂停_Video_Flowplayer - Fatal编程技术网

Video Flowplayer使用cuepoint在不同时间暂停

Video Flowplayer使用cuepoint在不同时间暂停,video,flowplayer,Video,Flowplayer,早上好。我有一个带有cuepoints ex[5,10]的Flowplayer视频。这里,我的视频从第5秒开始,在第10秒暂停。所以它起作用了。然而,视频有时在第9秒暂停,有时在第10秒暂停。所以它看起来像一个flowplayer bug 如果能给我一个提示或解决方案,让视频每次都在准确的时间暂停,我将不胜感激 下面是代码片段 flowplayer(flowplayerObject, { hlsjs: { xhrSetup: function (xhr) {

早上好。我有一个带有cuepoints ex[5,10]的Flowplayer视频。这里,我的视频从第5秒开始,在第10秒暂停。所以它起作用了。然而,视频有时在第9秒暂停,有时在第10秒暂停。所以它看起来像一个flowplayer bug

如果能给我一个提示或解决方案,让视频每次都在准确的时间暂停,我将不胜感激

下面是代码片段

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();
        };
      }) ;

谢谢

我以前没有使用过Flowplayer的提示点功能,但我熟悉seek()API函数,在该函数中,您可以在视频中指定要搜索的时间(以秒为单位)

要使seek功能正常工作,视频的每一秒都需要有一个关键帧。我觉得cuepoints也会有同样的要求

如果您熟悉ffmpeg,可以像这样使用“force_key_frames”参数为视频的每一秒添加一个关键帧-

ffmpeg-i输入文件位置-强制关键帧“expr:gte(t,n_forced*1)”其他ffmpeg参数-y输出文件位置


添加额外关键帧的缺点是,您的视频会占用磁盘上更多的空间,但如果您需要视频在指定的时间暂停(或)始终如一地启动,我想不出任何其他方法使用HTML5版本的Flowplayer。

我以前没有使用过Flowplayer的提示点功能,但我熟悉seek()API函数,在该函数中,您可以在视频中指定要搜索的时间(以秒为单位)

要使seek功能正常工作,视频的每一秒都需要有一个关键帧。我觉得cuepoints也会有同样的要求

如果您熟悉ffmpeg,可以像这样使用“force_key_frames”参数为视频的每一秒添加一个关键帧-

ffmpeg-i输入文件位置-强制关键帧“expr:gte(t,n_forced*1)”其他ffmpeg参数-y输出文件位置


添加额外关键帧的缺点是,您的视频将占用磁盘上更多的空间,但如果您需要视频在指定的时间暂停(或)始终如一地启动,我想不出任何其他方法使用HTML5版本的Flowplayer。

谢谢您的回答。这是我从flowplayer开发人员那里得到的:

进度事件(出于内存原因)的粒度限制为250ms,这会触发提示点事件。 您正在使用的视频的帧速率为25 fps,因此7.0秒的提示点正好位于帧边界上,因此,如果触发提示点的进度事件在7.0之前低于125毫秒,则可能触发过早。 稍微晚一点设置提示点应该会达到预期效果。 您不会获得总精度,因为每0.04秒触发一次事件,甚至更多


所以,我在视频的结尾加了0.5秒。

谢谢你的回答。这是我从flowplayer开发人员那里得到的:

进度事件(出于内存原因)的粒度限制为250ms,这会触发提示点事件。 您正在使用的视频的帧速率为25 fps,因此7.0秒的提示点正好位于帧边界上,因此,如果触发提示点的进度事件在7.0之前低于125毫秒,则可能触发过早。 稍微晚一点设置提示点应该会达到预期效果。 您不会获得总精度,因为每0.04秒触发一次事件,甚至更多


所以,我在视频的结尾加了0.5秒。

很高兴知道这一点。感谢分享您解决此问题的方法!很高兴知道。感谢分享您解决此问题的方法!