HTTP Live Streaming

HTTP Live Streaming，缩写為HLS，是由苹果公司提出基于HTTP的流媒体网络传输协议。是苹果公司QuickTime X和iPhone软件系统的一部分。它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载，每次只下载一些。当媒体流正在播放时，客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源，允许流媒体会话适应不同的数据速率。在开始一个流媒体会话时，客户端会下载一个包含元数据的擴充 M3U (m3u8) 播放列表文件，用于寻找可用的媒体流。

HLS只请求基本的HTTP报文，与实时传输协议（RTP）不同，HLS可以穿过任何允许HTTP数据通过的防火墙或者代理服务器。它也很容易使用内容分發网络来传输媒体流。

苹果公司把HLS协议作为一个互联网草案（逐步提交），在第一阶段中已作为一个非正式的标准提交到IETF。2017年8月，RFC 8216發佈，描述了HLS協議第7版的定義。

服务器支持
 Adobe Flash Media Server：从4.5开始支持HLS、Protected HLS（PHLS）。5.0改名为Adobe Media Server
 Flussonic Media Server：2009年1月21日，版本3.0开始支持VOD、HLS、时移等。
 RealNetworks的Helix Universal Server：2010年4月，版本15.0开始支持iPhone, iPad和iPod的HTTP直播、点播H.264/AAC内容，最新更新在2012年11月。
 微软的IIS Media Services：从4.0开始支持HLS。
 Nginx RTMP Module：支持直播模式的HLS。
 Nimble Streamer
 Unified Streaming Platform
 VLC Media Player：从2.0开始支持直播和点播HLS。
 Wowza Media Server：2009年12月9日发布2.0，开始全面支持HLS。
 VODOBOX Live Server：始支持HLS。
 Gstreamill是一个支持hls输出的，基于gstreamer的实时编码器。

客户端支持
 iOS从3.0开始成为标准功能。
 Adobe Flash Player从11.0开始支持HLS。
 Google的Android自Honeycomb（3.0）开始支持HLS。
 VODOBOX HLS Player (Android,iOS, Adobe Flash Player)
 JWPlayer (Adobe Flash)
 Flowplayer (Adobe Flash,使用hlsjs版本不使用Adobe Flash)
 Windows 10 的 EDGE 瀏覽器開始支持HLS。

参见
 自適性串流

参考书目

外部链接 
 
 
 Internet-Draft: HTTP Live Streaming: draft-pantos-http-live-streaming
Backbone Networks supports http live streaming in its Internet Radio Automation system
Apple to Provide Live Video Streaming of September 1 Event.

HTTP
多媒体
网络协议
蘋果公司軟體