【HTTP Live Streaming】(一)苹果公司 - 流媒体传输技术 - 概览
零、前言
前几个月偶然接触了下点播功能,自己实现了nginx-rtmp做直播,client端分别尝试了拉取flv和m3u8+ts之后,hls切分文件的思想吸引了我,把在apple官网学习到的内容翻译到自己博客里。
一、是什么?
HTTP直播(HLS)通过HTTP从普通网络服务器发送音频和视频,在基于iOS的设备(包括iPhone,iPad,iPod touch和Apple TV)以及台式计算机(macOS)上播放(备注:win系统也可以播放)。HLS使用与Web相同的协议,使用普通的Web服务器和内容交付网络部署内容。HLS旨在提高可靠性,并通过针对可用的有线和无线连接速度优化回放来动态适应网络条件。
HLS支持以下内容:
-
直播和预先录制的内容(视频点播或VOD)
-
不同比特率的多个备用流
-
响应网络带宽变化智能切换流
-
媒体加密和用户身份验证
下图显示了HTTP Live Stream的组件:
二、认识角度
1.hls 体系结构 及 如何部署
了解hls主要组件之间如何协同工作来传送流媒体,并通过创建基本网页的形式部署流媒体服务。详情参考:
2.流创建
学习如何通过HTTP Live Streaming启用的应用创建流, 确保正确的播放列表格式、以及应该遵守的指南。详情参考:
3.工具使用和验证
使用apple提供的工具对流进行分段,创建主播放列表,并验证自己工具的输出。详情参考:
三、资料整理
1.apple wwdc 关于hls的演讲:
https://developer.apple.com/documentation/http_live_streaming/videos_about_hls