造成直播源代码延迟的原因有几种? 您所在的位置:网站首页 网络直播源为何会失效 造成直播源代码延迟的原因有几种?

造成直播源代码延迟的原因有几种?

2024-01-23 23:35| 来源: 网络整理| 查看: 265

在直播中,主播和观众之间的实时互动,深受喜爱,那么直播源代码是怎么实现实时互动的呢?主要是依靠直播的低延迟,延迟变低,用户之间互动时就不会出现话题进度不同的情况,那么除了网络因素之外,还有哪些影响直播源代码延迟的因素呢?

直播源代码

一、传输造成的延迟

我们知道,要想实现直播的观看,就离不开音视频传输,而在传输的过程中,产生的延迟是不可避免的。我们从直播源代码的编码说起,音视频要想加快传输效率,编码就是必须的一步,就算编码速度再快,不可避免的也会产生一些延迟,有编码就会有解码,解码当然也需要一定的时间。

有人会说,那这样不进行编码就不会产生延迟了吧?不是的,如果不进行编码的话,音视频文件会非常大,传输的时间大大增加,反而会产生更大的延迟,同时对带宽的占用也会比较高,会增加带宽成本。除了编码以外,在音视频传输时候,可能需要经过多次分发,每次分发也会增加一些延迟。

直播源代码

二、网络丢包

直播源代码使用RTMP流媒体协议进行流媒体传输,RTMP流媒体协议有个特点,那就是它是基于TCP进行传输的,在传输中不会丢失的数据。

TCP为了保证传输时不会丢失音视频数据,有一个自动重传机制,如果发生数据丢失的情况,就会自动将丢失的数据包重新传输,而自动传输的过程中,直播不会一直进行,而是在等待丢失的数据到达后在播放。直播源代码基于丢包重传机制,如果网络丢包率上升,那么延迟就会越来越高。

直播源代码

三、缓冲延迟

直播源代码为了保证直播在任何环境下都可以流畅播放,会设置缓冲区,将一部分数据进行缓存,如果出现网络不好的情况,会播放这部分缓冲的数据,以保证视频不会卡顿,但是这个方案也有弊端,那就是累积延迟。虽然视频流畅度得到了保障,但是随着使用缓存的次数增多,当前观看的视频和直播进度差距会越来越大。

直播源代码会产生延迟的原因还有很多,比如网络波动也会增加延迟。既然会有延迟产生,当然也有降低延迟的方案。直播源代码可以选用H.624编码,降低编码速度,也可以通过丢帧策略,逐渐降低延迟。

声明:本文由云豹科技原创,转载请注明作者名及原文链接,否则视为侵权



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有