HLS协议详解

目录

一、协议概述

二、数据传输过程

三、知识点汇总

四、HLS优缺点及使用场景

五、QA

一、协议概述

1、写在前面:学习的时候一定要对照官方文档及背景知识(ts、m3u8、http)、结合分析工具,才能深入理解

(1)HLS官方文档:RFC 8216 - HTTP Live Streaming

(2)背景知识补充文档:TS格式详解M3U8格式详解HTTP协议详解之HTTP/1.1

(3)其它参考资料:HTTP Live Streaming (HLS) - Apple DeveloperApple官方对于Http Live Streaming 的常见问题回答

(4)学习HLS的时候可以配合抓包工具wireshark或chrome抓包工具,去分析收发的消息类型及消息内容。

2、HLS(HTTP Live Streaming)是苹果公司基于HTTP提出来的一种自适应码率的流媒体传输协议。尤其是在移动端,由于ios/h5不支持flash,使得HLS成了移动端实时音视频流传输的首选。HLS经常应用在直播领域,一些国内的直播云通常使用HLS拉流。但是HLS延迟严重,通常延迟都在10-30s之间。

3、HLS主要内容由HTTP + M3U8 + TS这三个部分共同组成

(1)HTTP是最常见的应用层协议,我们日常基本的浏览器上网就是基于HTTP协议。在HLS中,客户端通过HTTP请求获取m3u8内容。HTTP的详细内容可以参考作者的另一篇博文:HTTP协议详解之HTTP/1.1

(2)M3U8是一个UTF-8文本文件,不包含音视频数据,其内容是一个播放列表,告诉播放器如何播放一个个ts文件,相当于一个索引文件。M3U8的详细内容可以参考作者的另一篇博文:M3U8格式详解

(3)TS文件是一个媒体段,包含一部分音视频数据,一个完整的视频会包含很多个ts文件,直播场景下会不断的产生新的ts文件,播放HLS时实际上播放的就是ts。TS封装格式的详细内容可以参考作者的另一篇博文:TS格式详解

4、HLS(HTTP Live Streaming)允许播放器根据当前网络条件自适应媒体的比特率,以保持最佳质量的无间断播放。它支持插入式内容边界,可以在媒体流中插入广告、节目信息等内容。它提供了灵活的媒体加密框架,可以保护媒体内容的安全性。它可以高效地提供多个版本的同一内容,例如音频翻译。上述内

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值