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版的定义。[1]
服务器支持
[编辑]- 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。
参见
[编辑]参考书目
[编辑]- ^ History for draft-pantos-http-live-streaming. IETF. 2017-08-31 [2017-12-13]. (原始内容存档于2017-07-11) (英语).
外部链接
[编辑]- Daniel Eran Dilger. Apple launches HTTP Live Streaming standard in iPhone 3.0. Apple Insider. 2009-07-08 [2009-07-10]. (原始内容存档于2019-05-13).
- Chris Foresman. Apple proposes HTTP streaming feature as protocol standard. Ars Technica. July 9, 2009 [2009-07-10]. (原始内容存档于2009-07-11).
- 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(页面存档备份,存于互联网档案馆).