点击上方“LiveVideoStack”关注我们
翻译 | Alex
技术审校 | 赵军
本文来自OTTVerse,作者为Krishna Rao Vijayanagar。
HLS
Easy Tech
#013#
2009年,Apple推出了HLS(HTTP Live Streaming)——基于HTTP的自适应码率流媒体传输协议。HLS描述了一组通过互联网提供音视频服务的工具和程序。一个视频可以被分割成多个视频切片,这些切片的传送位置和顺序在一组被称为播放列表的XML文件中,该文件以文件扩展名m3u8结尾。人们可以使用兼容了HLS的播放器播放视频。
审校者注:原文说HLS使用了XML文件,是一个错误的说法,为了保留和原文一致,翻译并未去纠正这个错误,实际上,HLS 使用的是M3U8 文件,它是基于M3U扩展的UTF-8文本文件。
在本篇文章中,我们将深入了解实现HLS视频流的程序和工具。如果你对这一领域不太了解,可以先阅读什么是视频点播(VOD)?和理解ABR及其工作原理这两篇文章。
HLS的历史
2009年,Apple在推出iPhone 3时,同时推出了HLS。目的是提升iPhone用户的媒体传输体验,并且使用户不再遇到带宽波动和传输受到干扰等问题。从那时起,Apple便一直定期改进HLS,使它成为可靠、被广泛支持的视频传输协议。
Apple的网站上有大量相关文档,包括创作指南、HLS简介、HTTP实时流媒体等。你也可以参考相关规范,查看HLS的更多细节并对它有更多了解(其中有对各种标签的清晰解释,以及ABR视频流的详尽介绍)。
HLS的架构
HLS并不需要高级的硬件来传输视频,它是一个简单高效的协议。通过HLS,你可以使用常规的Web服务器存储和分发内容。但是它需要将数据存储在适当的格式中,且客户端软件能够获取并处理HLS视频内容。让我们一起来看看HLS视频传输服务的架构是什么样子。
HLS架构 (图片来自Apple)
编码器:</