对flv.js直播流延迟问题解决

本文讲述了作者通过调整云服务器上的Nginx配置,将RTMP流转换为HTTP流以减少延迟,特别提到关闭gop_cache以降低延迟至2-3秒。进一步通过前端跳帧功能将直播延时降至1.5秒,以实现流畅的直播体验。
摘要由CSDN通过智能技术生成

通过云服务器搭建了流媒体,将rtmp转成http流推出去,发现有6,7秒左右的延迟,通过从网上找到的几种方法,结合后延迟目前约为1.5s左右。步骤如下

1.推流搭建的nginx服务器,需要修改nginx.conf文件中的gop_cache 缓存为关闭状态

要求最小延时,需要把gop_cache 设置为off;要求快速播放,需要把gop_cache 设置为on;

设置完成后延迟有明显提升,延迟达到2-3s左右,完成基本开发的功能

为进一步缩短直播延时时间,再前端界面上加入跳帧,同时可以解决当离开网页后的累计延迟问题,加入后直播延时达到1.5s

setInterval(() => {
      if (videoElement.buffered.length) {
        let end = videoElement.buffered.end(0);
        let diff = end - videoElement.currentTime;
        if (diff >= 1) {//如果差值大于等于0.5 手动跳帧 这里可根据自身需求来定
          videoElement.currentTime = videoElement.buffered.end(0);//手动跳帧
       }
      }
    }, 2000); 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值