Commit 59683e06b8aa9420402b5ee95127b912d341d55c

Authored by xp.Huang
2 parents 8c0b5609 5f2633ad

Merge branch 'ft' into 'main_dev'

fix: 修复videojs切换至其他页面,返回播放界面,视频时延问题

See merge request yunteng/thingskit-front!1207
... ... @@ -72,6 +72,26 @@
72 72 videoPlayInstance.value = videoJs(unref(videoPlayEl)!, unref(getOptions), () => {
73 73 emit('ready', unref(videoPlayInstance));
74 74 });
  75 + //fix 修复videojs解决直播延时的问题
  76 + videoPlayInstance.value?.on('timeupdate', function () {
  77 + // 计算表最新推流的时间和现在播放器播放推流的时间
  78 + let differTime =
  79 + (videoPlayInstance.value as any as VideoJsPlayer)?.buffered()?.end(0) -
  80 + (videoPlayInstance.value as any as VideoJsPlayer)?.currentTime();
  81 + // 差值小于1.5s时根据1倍速进行播放
  82 + if (differTime < 1.5) {
  83 + videoPlayInstance.value?.playbackRate(1);
  84 + }
  85 + // 差值大于1.5s小于10s根据1.2倍速进行播放
  86 + if (differTime < 10 && differTime > 1.5) {
  87 + videoPlayInstance.value?.playbackRate(1.2);
  88 + }
  89 + // 差值大于10s时进行重新加载直播流
  90 + if (differTime > 10) {
  91 + init();
  92 + }
  93 + });
  94 + //
75 95 };
76 96
77 97 const customInit = (getOptionsFn: (optios: VideoJsPlayerOptions) => VideoJsPlayerOptions) => {
... ...