Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.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
Javascript HTML5 video window.onscroll的设置currentTime滞后_Javascript_Jquery_Css_Html_Video - Fatal编程技术网

Javascript HTML5 video window.onscroll的设置currentTime滞后

Javascript HTML5 video window.onscroll的设置currentTime滞后,javascript,jquery,css,html,video,Javascript,Jquery,Css,Html,Video,我正在尝试设置html5视频窗口滚动事件的当前时间。基本上,这个想法是在滚动页面时在视频时间轴中向前或向后移动 这里的这个例子做得很好,没有问题: 代码如下: //选择视频元素 var vid=document.getElementById('v0'); //变量vid=$('#v0')[0];//jquery选项 //加载时暂停视频 参阅暂停(); //由于http://codepen.io/daveroma/ window.onscroll=函数(){ vid.currentTime=w

我正在尝试设置html5视频窗口滚动事件的当前时间。基本上,这个想法是在滚动页面时在视频时间轴中向前或向后移动

这里的这个例子做得很好,没有问题:

代码如下:

//选择视频元素
var vid=document.getElementById('v0');
//变量vid=$('#v0')[0];//jquery选项
//加载时暂停视频
参阅暂停();
//由于http://codepen.io/daveroma/
window.onscroll=函数(){
vid.currentTime=window.pageYOffset/400;
};
#设置高度
显示块
高度13500px
#v0
定位
前0名
左0
宽度100%
p字体系列helvetica
字体大小24px

很抱歉,您的浏览器不支持视频元素


我遇到了类似的问题,问题是视频编码。
视频关键帧速率较低会导致延迟

我的猜测是,更改
video.currentTime
会使浏览器的视频解码器搜索距离指定时间位置最近的关键帧,而对于具有罕见关键帧的视频,这可能需要一段时间。 用更高的关键帧速率重新编码视频修复了我的问题

请注意,可以使用FFMPEGs
-g
标志控制关键帧间距


我忘了补充一点,它在Safari上似乎工作得很好,而这个问题只发生在其他浏览器(Chrome、Firefox)上。你找到解决这个问题的方法了吗@philippHi@QuinnKeaveney,不幸的是,这应该被标记为正确答案。具有相同的问题,并且以更高的关键帧速率(例如,每帧关键帧的频率)重新编码视频解决了该问题。您不能只插入/修改帧,视频需要重新编码。