video标签视频倍速播放

刷继教课程,视频16倍速播放,之前可以在控制台可以通过JS改,但是今年平台升级了,系统会检查你是不是倍速播放,一旦倍速播放就会停止,不让看了,代码如下图,怎么解决?

img

系统会检查你是不是倍速播放是通过Date.now()获取系统时间来判断的,
你可以重新定义Date.now()方法,让Date.now()方法返回的时间也是倍速增加
比如让Date.now()方法返回的时间也加速 16 倍

Date._now=Date.now;
var startTime = Date._now();
Date.now=function () {
    return startTime+(Date._now()-startTime)*16;
}

setInterval(function(){
    var t = Date.now();
    console.log(new Date(t));
}, 1000);

这个逻辑没问题吧?是合理的吧?

修改系统时间试试能不能行

倍数可以用js改,不能把playDiff=sysDiff赋值相等吗?

经观察,最后被限制倍速,是由于number-lastTimeHandlerNumber的播放时间进度条差大于
sysTime-lastSystemTime的系统时间差1.5倍导致的,而sysTime是由Date.now()获得,
因此我们只要让sysTime无限大,让sysTime-lastSystemTime的时间差无限大,
那么播放时间进度条时间差永远不可能大于系统时间差1.5倍
覆盖now方法

Date.now=function () {
    return new Date(2099, 1, 1).getTime()
}

望采纳,谢谢