HLS协议

flash网络播放器

早期的网络播放器多使用 Adobe 的 flash,播放 .flv 格式文件,使用 RTMP协议。

iPhone发布后,苹果公司坚决不支持 flash,并且 RTMP协议 存在一些问题:RTMP协议不使用标准的HTTP接口传输数据,所以在一些特殊的网络环境下可能被防火墙屏蔽掉

所以 苹果公司提出 HLS协议

介绍

HLS协议,这个协议是由苹果公司提出并推广,取代 RTMP 协议

视频播放的过程

现在的视频网站采用的是流媒体传输协议,就是将一段视频 切成无数个小段,这几个小段就是 .ts 格式的视频文件,一段一段的网站上播放。

这样做的好处是 观看更加流畅,因为他会根据网络状况自动切换视频的清晰度,在网络状况不稳定的情况下,对保障流畅播放非常有帮助。

对视频切片

  1. 服务器采集编码传输视频到切片器
  2. 切片器对视频创建索引文件(即:.m3u8文件),并且切割成n个 .ts 文件
  3. 这2类文件传输到http服务器上

播放视频

网站/客户端根据 .m3u8索引文件,查找http服务器上的 .ts 文件,连续播放这n个ts文件,就可以了。

参考:
https://zhuanlan.zhihu.com/p/346683119