HLS 原理1

  1. HLS
    HLS是为移动设备开发的基于HTTP的流媒体解决方案。

  2. 原理:
    将视频或流切分成小片(TS), 并建立索引(M3U8).

支持视频流:H.264; 音频流:AAC

  1. M3U8文件解析
    M3U8文件在很多地方也叫做Playlist file。

一个简单的例子:

EXTM3U

EXT-X-TARGETDURATION:10

EXT-X-MEDIA-SEQUENCE:1

EXTINF:10, http://media.example.com/segment0.ts

EXTINF:10, http://media.example.com/segment1.ts

EXTINF:10, http://media.example.com/segment2.ts

EXT-X-ENDLIST (VOD含EXT-X-ENDLIST,live stream则没有)

3.1 File
一个M3U的 Playlist 就是一个由多个独立行组成的文本文件,每行由回车/换行区分。每一行可以是一个URI 空白行或是以”#“号开头的字符串,并且空格只能存在于一行中不同元素间的分隔。
一个URI 表示一个媒体段或是”variant Playlist file“(最多支持一层嵌套,即一个mm3u8文件中嵌套另一个m3u8)

以”#EXT“开头的表示一个”tag“,否则表示注释

3.2 Tag

EXTM3U:

每个M3U文件第一行必须是这个tag。

EXTINF

指定每个媒体段(ts)的持续时间,这个仅对其后面的URI有效,每两个媒体段URI间被这个tag分隔开,其格式如下:
#EXTINF:

你可能感兴趣的:(HLS 原理1)