m3u8是什么

m3u8 是苹果公司发布的视频播放规范,是 m3u 的一种,仅仅编码格式使用的是 UTF-8 。m3u8 精确来说是一种索引文件,应用 m3u8 文件事实上是由它来分析对应的放到服务器里的视频IP地址,进而实现在线播放 。应用 m3u8 格式文件关键因为可以实现多码率视频的兼容,视频平台能够根据用户的网络带宽状况,自动为客户端配对一个适宜的码率文件开展播放,充分保证视频的流畅性 。

m3u8是什么

文章插图
M3U8 文件是指 UTF-8 编码格式的 M3U 文件(M3U 应用 Latin-1 字符集编号) 。M3U 文件是一个纪录检索的纯文本文件,开启它时播放软件并非播放它,而是根据它检索寻找对应的音视频文件的IP地址进行在线播放 。
M3U8 编码格式m3u8 基本可以觉得便是.m3u 格式文件,区别就是,m3u8 文件应用 UTF-8 字符编码 。
#EXTM3U m3u 文件头,务必放到第一行
#EXT-X-MEDIA-SEQUENCE 第一个 TS 分片的系列号
#EXT-X-TARGETDURATION 每个分片 TS 的主要的时间
#EXT-X-ALLOW-CACHE 是否允许 cache
#EXT-X-ENDLIST m3u8 文件结束符
#EXTINF extra info,分片 TS 的信息,如时间,带宽等
#EXT-X-PLAYLIST-TYPE 给予有关 PlayList 的可塑性的信息,对整个 PlayList 文件合理,是选择项 。格式如下:#EXT-X-PLAYLIST-TYPE:VOD(或是 EVENT) 。VOD 表明服务器不能改变 PlayList 文件;EVENT 也表示服务器不能改变或者删掉 PlayList 文件中的任何部分,但是能够向该文件中增加新的一行内容 。
M3U8 的优势1.能做多码率的兼容 。依据网络带宽,客户端会自动选择一个适合自己码率的文件开展播放,确保视频流的顺畅,代表是苹果的 HLS(HTTP Live Streaming) 。HLS 有一个特点:响应式码率流播(adaptive streaming),客户端可以根据网络情况自动选择不同码率的视频流,允许的情况下应用高码率,网络繁忙的时候使用低码率,而且自动在二者间随意切换 。这对移动终端网络情况不稳定前提下确保顺畅播放非常有帮助 。
2.减少源服务器的负荷压力 。M3U 的特点是将流媒体切分成多个 TS 片段,再通过一个拓展的 m3u 目录文件把这些 TS 片段集中起来供客户端播放器接受 。这么做对比应用 RTSP 协议的好处在于,一旦分割进行,以后的派发过程完全不需要附加使用任何专业软件,普通网站服务器即可,能够降低 CDN 边沿服务器的配置规定,能够使用任何现成的 CDN 。派发应用的协议是最常见 HTTP,代理服务器对这个协议的缓存提升非常完善,而极少有代理服务器对 RTSP 地进行缓存提升 。
3.对于非实时监控,益处同样存在:播放应用 HTTP 协议的单独 MP4 格式视频文件时,必须代理服务器支持 HTTP range request 以获取大文件中的一部分,但并非所有代理服务器都对此有较好的支持 。而 M3U 则只应该根据目录文件里的时间线找到对应的 TS 片段下载即可,不用 range request,对代理服务器的需求小很多 。全部代理服务器都支持小文件高效缓存 。
4.为什么要用 TS 而非 MP4,这是因为2个 TS 片段能够拼接,播放器能持续播放,而 MP4 文件因为编码方式的原因,2段 MP4 不能拼接,播放器持续播放2个 MP4 文件会有破音和界面中断,危害客户体验 。
【m3u8是什么】