Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c917419

Browse files
committed
[CHG]支持flv追帧播放,解决长时间播放延时问题
1 parent b40f3a4 commit c917419

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

ezuikit.js

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* jssdk 3.4.0
2+
* jssdk 3.5.0
33
*/
44
(function (global, factory) {
55

@@ -1458,6 +1458,39 @@ function addCss(filepath, callback) {
14581458
}
14591459
this.flv = flvPlayer;
14601460
};
1461+
EZUIPlayer.prototype.openFlvFrameTrace = function (thresholdSecond) {
1462+
if(!thresholdSecond) {
1463+
thresholdSecond = 3; // 默认为3秒
1464+
}
1465+
var flvPlayer = this.flv;
1466+
var videoElement = this.video;
1467+
// 延时倍速追加
1468+
flvPlayer.flvFrameTrace = setInterval(function(){
1469+
if(flvPlayer.buffered.length) {
1470+
var end = flvPlayer.buffered.end(0);
1471+
var diff = end - flvPlayer.currentTime;
1472+
// console.log("buffered.length2",flvPlayer.buffered.length);
1473+
console.log("flvPlayer.buffered.end(0)",flvPlayer.buffered.end(0));
1474+
if(diff > thresholdSecond && videoElement.playbackRate === 1) { // 时差超过3秒
1475+
//启用2倍速播放
1476+
console.log("启用2倍速播放",end,flvPlayer.currentTime,diff,(diff > thresholdSecond))
1477+
videoElement.playbackRate = 2; // 倍速播放
1478+
// flvPlayer.currentTime = (flvPlayer.buffered.end(0) - 1);
1479+
} else if (diff < thresholdSecond && videoElement.playbackRate === 2 ) {
1480+
//启用1倍速度播放
1481+
console.log("启用1倍速播放",end,flvPlayer.currentTime,diff,(diff > thresholdSecond))
1482+
videoElement.playbackRate = 1; // 倍速播放
1483+
}
1484+
}
1485+
},2000);
1486+
}
1487+
EZUIPlayer.prototype.closeFlvFrameTrace = function() {
1488+
var flvPlayer = this.flv;
1489+
if(flvPlayer.flvFrameTrace) {
1490+
this.video.playbackRate = 1;
1491+
clearInterval(flvPlayer.flvFrameTrace);
1492+
}
1493+
}
14611494
EZUIPlayer.prototype.rePlay = function (playParams) {
14621495
this.loadingStart();
14631496
// _this.loadingSet(0,{text:'获取设备播放地址'})

0 commit comments

Comments
 (0)