Commit d3b756175cb040cf85f999e609fd006e28ffb999

Authored by xp.Huang
2 parents ea24ba08 82cc5acd

Merge branch 'fix/video-time-delay' into 'main_dev'

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

See merge request yunteng/thingskit-view!189
... ... @@ -125,7 +125,22 @@ const initVideo = async () => {
125 125 }
126 126 }
127 127 }
128   - videoPlayer = videojs(videoRef.value, options)
  128 + videoPlayer = videojs(videoRef.value, options) //fix 修复videojs解决直播延时的问题
  129 + videoPlayer?.on('timeupdate', function () {
  130 + // 计算表最新推流的时间和现在播放器播放推流的时间
  131 + let differTime =
  132 + (videoPlayer as any as videojs.Player)?.buffered()?.end(0) -
  133 + (videoPlayer as any as videojs.Player)?.currentTime() // 差值小于1.5s时根据1倍速进行播放
  134 + if (differTime < 1.5) {
  135 + videoPlayer?.playbackRate(1)
  136 + } // 差值大于1.5s小于10s根据1.2倍速进行播放
  137 + if (differTime < 10 && differTime > 1.5) {
  138 + videoPlayer?.playbackRate(1.2)
  139 + } // 差值大于10s时进行重新加载直播流
  140 + if (differTime > 10) {
  141 + initVideo()
  142 + }
  143 + }) //
129 144 }
130 145 }
131 146 }
... ...