HTTP直播流(HLS)是使用最广泛的视频流协议之一。虽然它被称为HTTP“实时”流,但它同时用于点播流和实时流。HLS将视频文件分解为更小的可下载HTTP文件,并使用HTTP协议交付它们。客户端设备加载这些HTTP文件,然后将它们作为视频播放。
HLS的一个优点是所有连接到Internet的设备都支持HTTP,这使得它比需要使用专用服务器的流协议更容易实现。另一个优点是HLS流可以根据网络条件提高或降低视频质量,而不会中断播放。这就是为什么在用户观看视频的过程中,视频质量可能会变得更好或更差。此功能称为“自适应比特率视频传输”或“自适应比特率流”,如果没有它,缓慢的网络条件可能会完全阻止视频播放。HLS由Apple开发,用于Apple产品,但现在已用于各种设备。
什么是流媒体?
流媒体是一种通过Internet向用户提供视频和音频媒体的方式。它的工作原理是一次一点点地连续将媒体文件发送到用户的设备,而不是一次全部发送。原始媒体文件被远程存储,或者在直播的情况下,使用远程摄像头或麦克风实时创建。这样,无需用户设备先下载整个文件即可播放视频或音频。
什么是HTTP?
HTTP是一种应用层协议,用于在连接到网络的设备之间传输信息。普通用户可以访问的每个网站和应用程序都运行在HTTP上。HTTP上的数据传输通常基于请求和响应。几乎所有的HTTP消息要么是请求,要么是对请求的响应。
通过HTTP流式传输,标准的请求-响应模式不适用。客户端和服务器之间的连接在流的持续时间内保持打开状态,服务器将视频数据推送到客户端,这样客户端就不必请求每一段视频数据。
HLS是如何工作的?
服务器:HLS流源自存储媒体文件(在点播流中)或创建流的位置(在实时流中)的服务器。因为HLS基于HTTP,所以任何普通的Web服务器都可以发起流。
服务器上发生两个主要过程:
1.编码:视频数据被重新格式化,以便任何设备都可以识别和解释数据。HLS必须使用H.264或H.265编码。
2.分段:视频被分成几秒钟长的片段。段的长度可能会有所不同,但默认长度为6秒(直到2016年为10秒)。
3.除了将视频分割成片段外,HLS还会创建视频片段的索引文件以记录它们所属的顺序。

分发:当客户端设备请求流时,编码的视频片段通过Internet推送到客户端设备。通常,内容交付网络(CDN)将帮助将流分发到地理上不同的区域。CDN还将缓存流以更快地将其提供给客户端。
客户端设备:客户端设备是接收流和播放视频的设备——例如,用户智能手机或笔记本电脑。客户端设备使用索引文件作为按顺序组装视频的参考,并根据需要从较高质量的图像切换到较低质量的图像(反之亦然)。
什么是HLS中的自适应比特率流式传输?
HLS相对于其他一些流式传输协议的优势之一是自适应比特率流式传输。这是指随着网络条件的变化在流的中间调整视频质量的能力。即使网络条件变差,这种能力也可以让视频继续播放;相反,它还可以最大限度地提高视频质量,使其达到网络可以支持的最高水平。
如果网络速度变慢,用户的视频播放器会检测到这一点,并且自适应比特率流会降低流的质量,以便视频不会停止播放。如果有更多的网络带宽可用,自适应比特率流式传输会提高流式传输的质量。
自适应比特率流是可能的,因为HLS在分段过程中创建了多个不同质量级别的重复分段流。用户的视频播放器可以在视频播放期间从这些流之一切换到另一个流。
HLS是否使用TCP或UDP作为其传输协议?
TCP和UDP是传输协议,这意味着它们负责通过Internet传递内容。TCP往往比UDP更可靠地传递数据,但后者要快得多,即使某些数据在传输过程中可能会丢失。
由于UDP速度更快,一些流协议使用UDP而不是TCP。HLS使用TCP。这有几个原因:
1.HLS基于HTTP,并且HTTP协议是为与TCP一起使用而构建的(有一些例外)。
2.与最初开发流媒体时相比,现代互联网更加可靠和高效。在当今世界的许多地方,用户连接已经大大改善,特别是对于移动连接。因此,用户有足够的带宽来支持每个视频帧的传输。
3.自适应比特率流有助于补偿TCP可能较慢的数据传输。
4.HLS流不需要像视频会议连接那样是“实时的”。额外几秒钟的延迟不会像丢失视频帧那样影响用户体验。
流式传输通常使用哪些其他协议?
有许多与HLS类似的协议,例如MPEG-DASH和HDS,它们也通过HTTP运行并提供自适应比特率流。在RTMP或HDS上运行的AdobeFlash曾经是用于视频流的主要技术;许多浏览器不再支持Flash。RTMP仍在使用中,尽管对它的支持正在下降。
本文来源:国外服务器--什么是HTTP实时流(HLS是如何工作的)
本文地址:https://www.idcbaba.com/guowai/4565.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



