您的位置:首页 > 理论基础 > 计算机网络

http live streaming(m3u8 streaming)(m3u8)

2012-08-16 13:56 344 查看
m3u8 笔记:

在IOS device和mac上可以用http的方式进行分发,其中playlist标准为由m3u扩展而来的m3u8文件,媒体文件为MPEG2-TS或者AAC文件(audio only)。

m3u8文件有两种应用场景:

multi bitrate adaptive streaming

#EXTM3U

#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1280000
http://example.com/low.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000
http://example.com/mid.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=7680000
http://example.com/hi.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=65000,CODECS="mp4a.40.5"
http://example.com/audio-only.m3u8
sbr bitrate adaptive streaming

#EXTM3U

#EXT-X-TARGETDURATION:5220

#EXTINF:5220,
http://media.example.com/entire.ts
#EXT-X-ENDLIST

rfc doc:

http://tools.ietf.org/html/draft-pantos-http-live-streaming-06

m3u8 文件是m3u文件的扩展。在该rfc中定义了扩展的关键字:

其中:

#EXT-X-TARGETDURATION

定义每个TS的最大的duration。

#EXT-X-MEDIA-SEQUENCE

定义当前m3u8文件中第一个文件的序列号,每个ts文件在m3u8文件中都有固定唯一的序列号,该序列号用于在MBR时切换码率进行对齐。

#EXT-X-KEY

定义加密方式和key文件的url,用于取得16bytes的key文件解码ts文件。

属性:

METHOD

URL

#EXT-X-PROGRAM-DATE-TIME

第一个文件的绝对时间

#EXT-X-ALLOW-CACHE

是否允许cache。

#EXT-X-ENDLIST

表明m3u8文件的结束。live m3u8没有该tag。

#EXT-X-STREAM-INF

属性:

BANDWIDTH

PROGRAM-ID

CODECS

#EXT-X-DISCONTINUITY

当遇到该tag的时候说明以下属性发生了变化:

file format

number and type of tracks

encoding parameters

encoding sequence

timestamp sequence

#EXT-X-VERSION

原文:http://blog.csdn.net/afeng0007/article/details/6765105
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: