h5解决延时问题

1.wfs.js库中做了缓存,收到一定的数据之后才执行fMP4 fragment的封装:

解决:把wfs.js库中的缓存去掉,每来一帧数据都执行fMP4 fragment的封装

 

2.chrome book 硬解会缓冲一帧数据:

解决:针对chrome在服务器端多发一帧数据

 

3.优化:

另写一个js里预判断延时方法1:

let end = g_Video.buffered.end(0);
let diff = end - g_Video.currentTime;
if(diff>0.8){
             console.log(g_Video.currentTime);
             console.log(end);
             console.log(diff);
             g_Video.currentTime = end - 0.1;
             //clearInterval(intervalId);
             //this.changeView();
         }

 

另写一个js里预判断延时方法2:改进

 

4.优化:

使用WebSocket协议向服务器发送WebSocket连接时,后面的路径改为副码流(之前是h5新增码流 【0/0/2】 视频质量最差,主码流的话画面最清晰但有卡顿的情况,经测试副码流较合适)

 

经初步测试,视频质量有提高,延迟在200m上下并不缓存叠加,后续优化可考虑把wfs.js延迟方法干掉

posted @ 2021-03-12 10:22  封兴旺  阅读(1047)  评论(2编辑  收藏  举报

联系方式: 18274305123(微信同号)