什么是延迟?
简单来说: 延迟或滞后就是延迟。
当你进行流媒体直播时,你正在捕捉视频并通过互联网广播给你的观众。
延迟是指在下列情况下的时间量:
- 你的相机记录你的视频
- 和你的观众能够看到你刚刚录制的内容。
延迟和互联网带宽
你可以在在线速度测试中查看当前的延迟时间。只需查找“ping”或 ping 速率。
请注意,你的延迟并不会真正受到您的互联网速度的影响。许多人混淆了这两个术语;但它们完全不同。
获得更高的网络速度不会减少你的延迟。高速网络可能会使页面加载更快,可能会让你的视频流质量更高 – 但它仍然会延迟你的直播。
广播基本上是随着连接发送数据流,把它想象成水顺着管道流走。
带宽是管道的宽度。更宽的管道可以让更多的水流过它。这是理论上可以随时通过连接传输的最大数据量。
延迟是从管道的一端到另一端所需的时间。这是打开供水系统与实际水从管道另一端流出之间的时间差。
当我们讨论这个问题时:
吞吐量是在给定时间段内传输的实际数据量,通常小于带宽。也许您的管道有很多弯头,从而减慢了水流速度。可能有泄漏或阻塞,也许您的水源没有泵出足够的压力来填充管道。
为什么会出现延迟?
连接类型: 连接类型会影响延迟和速度。例如,光纤传输视频的速度比无线互联网快。
编码: 很大程度上取决于编码器,需要对其进行优化,以尽可能少的延迟向接收设备发送信号。
视频格式: 较大的文件大小意味着通过互联网传输文件需要更长的时间,因此增加了流媒体延迟。
距离: 如果您远离互联网服务提供商 (ISP)、互联网集线器或卫星,您的视频可能会出现延迟。
设备过载:当许多人同时共享同一个互联网连接时,可能会影响您的延迟。
恶意软件或病毒:计算机病毒或可疑文件也会对您的互联网速度和流媒体延迟造成严重破坏。
什么是“好的”延迟?
直播时,你希望直播尽可能接近实时。但由于互联网的工作方式,总会有一些延迟。
那么多少延迟是可以的?
事实上, 直播延迟没有标准。当有人说低延迟时,他们的意思是它低于他们特定行业的平均水平。
由于传输链上的延迟很小,即使是直播电视广播 (想想超级碗)也有五秒的延迟。
那么你应该瞄准的行业平均水平是多少?大多数在线流媒体都有 5 秒到一分钟的延迟。在接受调查时,53% 的视频开发人员表示他们希望实现低于 5 秒的延迟。这是直播中“低延迟”的基准,供您参考。
你真的需要低延迟吗?
对于今天的大多数直播者来说,并非如此。如果你正在教学、提供演示或只是娱乐机会,没有人会注意到任何滞后。
唯一的例外是需要双向通信时。例如:
问答环节:假设你正在主持现场问答环节,听众通过聊天向你提问,你在视频中做出回应。延迟 30 秒:
- 观众需要 30 秒才能知道你已经开始提问
- 他们输入后又需要 30 秒才能开始回复
- 然后在你开始响应后又需要 30 秒,观众才能看到你在说什么。这意味着你必须为每个问题停顿 90 秒。这个太糟糕了!
现场拍卖:延迟高,投标人没有时间响应加价。以下是拍卖中可能发生的情况:
- 投标人 1:我出价 200。
- 拍卖师:我们有 200 个。我听说是 250 个吗?有人有250吗?最后一次通话 250。去一次。去了两次。卖了 200 到…
- 投标人 2:我有 250 美元
- 拍卖师:……嗯……这就尴尬了。
视频通话和聊天:与现场拍卖相同——你想与朋友实时交谈,而不是在等待每个人都听到你说的话时尴尬地看着对方。
如何获得更低的延迟?
换成网线:Wifi 路由器无法像老式以太网电缆那样快速传输数据。我们也喜欢无线,但我们建议您的主要广播设备使用以太网连接。
改用老式光纤:如果以太网线接入卫星互联网,则无济于事。没有人喜欢在房子里到处串线,但卫星在数万英里之外的空间。每一个请求都要先到卫星,然后到主要的ISP中心和互联网,然后再回来,要经过多次。因此,卫星连接的 ping 率高于光纤互联网。
减少网络拥塞:延迟也会受到你的网络正在做的其他事情的影响。如果你有 3 个下载正在运行,而您的邻居或室友同时在你的连接上流式传输 Netflix,你会看到更多的延迟。在这种情况下,要么将所有其他设备踢出连接,要么获得专用的流媒体连接。
升级您的硬件:即使使用正确的连接且没有拥塞,你也可能会因为硬件无法跟上而出现一些延迟。每台设备——从你的笔记本电脑或电脑到你的路由器——对它们可以传输的数据量都有一些硬性限制。你可以从升级网络设备中获益。
离你的观众更近:你的流传输的距离越远,观众的延迟时间就越长。为减少延迟,你可以使用 CDN 来拉近与观众的距离。
使用更快的编码器: 你的视频编码器会在传输前将你的实时视频转换为压缩视频文件。这会增加流中的延迟。你可以通过为软件编码器或高速硬件编码器购买专用的高性能机器来减少延迟。
低延迟的流媒体协议
你只需升级连接和硬件即可降低直播流的延迟,但这是一项相当大的投资。
一种更简单的方法是更改你使用的流媒体协议 。
用外行的话来说,流协议是数据从一个设备或系统传输到另一个设备或系统的方式。这些协议层层叠叠,形成一个协议栈。这样,每一层的协议都可以专注于特定的功能并相互协作。
以下是当今使用的主要流媒体协议,以及要使用的协议:
WebRTC
✔️高速 | ❌ 低质量 |
✔️ 低延迟 | ❌ 不支持 CDN* |
适用于:实时数据传输和视频会议
RTMP
✔️高速 | ✔️ 高品质 |
✔️ 低延迟 | ❌使用闪光灯 |
适用于:向附近的人高速传输视频
HLS
✔️高速 | ✔️ 高品质 |
✔️ 低延迟 | ✔️ CDN 支持 |
适用于:高质量直播
降低延迟的快速简便方法
如果您想同时以低延迟向多个频道传输高质量流媒体,最好的选择可能是使用第三方直播服务,可以参考阅读直播中的难点和痛点都有哪些?直播痛点关键技术解析
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/yinshipin/19810.html