千家信息网

M3U8文件格式介绍

发表于:2025-02-06 作者:千家信息网编辑
千家信息网最后更新 2025年02月06日,阿里云的CDN开通后,作视频服务,通常会把视频文件存放到OSS上面,这个时候会 用到切片服务,m3u8就比较常见的媒体格式。M3U8 是 Unicode 版本的 M3U, 用 UTF-8 编码。"M3
千家信息网最后更新 2025年02月06日M3U8文件格式介绍

阿里云的CDN开通后,作视频服务,通常会把视频文件存放到OSS上面,这个时候会 用到切片服务,m3u8就比较常见的媒体格式。M3U8 是 Unicode 版本的 M3U, 用 UTF-8 编码。"M3U" 和 "M3U8" 文件都是苹果公司使用的 HTTP Live Streaming(HLS) 协议格式的基础,
这种协议格式可以在 iPhone 和 Macbook 等设备播放

       m3u8 文件其实是 HTTP Live Streaming(缩写为 HLS) 协议的部分内容,    而 HLS 是一个由苹果公司提出的基于 HTTP 的流媒体网络传输协议        HLS 的工作原理是把整个流分成一个个小的基于 HTTP 的文件来下载,    每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同    的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同    的数据速率。在开始一个流媒体会话时,客户端会下载一个包含元数    据的 extended M3U (m3u8) playlist文件,用于寻找可用的媒体流。HLS 只请求基本的 HTTP 报文,与实时传输协议(RTP)不同,HLS     可以穿过任何允许 HTTP 数据通过的防火墙或者代理服务器。它也很    容易使用内容分发网络来传输媒体流。

HLS 是新一代流媒体传输协议,其基本实现原理为将一个大的媒体文件进行分片,将该分片文件资源路径记录于 m3u8 文件(即 playlist)内,其中附带一些额外描述(比如该资源的多带宽信息···)用于提供给客户端。客户端依据该 m3u8 文件即可获取对应的媒体资源,进行播放。

因此,客户端获取 HLS 流文件,主要就是对 m3u8 文件进行解析操作

 M3U8 文件简介

m3u8 文件实质是一个播放列表(playlist),其可能是一个媒体播放列表(Media Playlist),或者是一个主列表(Master Playlist)。但无论是哪种播放列表,其内部文字使用的都是 utf-8 编码。

当 m3u8 文件作为媒体播放列表(Meida Playlist)时,其内部信息记录的是一系列媒体片段资源,顺序播放该片段资源,即可完整展示多媒体资源。其格式如下所示:

#EXTM3U
#EXT-X-TARGETDURATION:10

#EXTINF:9.009,
http://media.example.com/first.ts
#EXTINF:9.009,
http://media.example.com/second.ts
#EXTINF:3.003,
http://media.example.com/third.ts
对于点播来说,客户端只需按顺序下载上述片段资源,依次进行播放即可。而对于直播来说,客户端需要 定时重新请求 该 m3u8 文件,看下是否有新的片段数据需要进行下载并播放。

当 m3u8 作为主播放列表(Master Playlist)时,其内部提供的是同一份媒体资源的多份流列表资源(Variant Stream)。其格式如下所示:

#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=150000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/low/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=240000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/lo_mid/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=440000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/hi_mid/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=640000,RESOLUTION=640x360,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/high/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=64000,CODECS="mp4a.40.5"
http://example.com/audio/index.m3u8

该备用流资源指定了多种不同码率,不同格式的媒体播放列表,并且,该备用流资源也可同时提供不同版本的资源内容,比如不同语言的音频文件,不同角度拍摄的视屏文件等等。客户可以根据不同的网络状态选取合适码流的资源,并且最好根据用户喜好选择合适的资源内容。

文件 资源 媒体 不同 客户 客户端 格式 内容 流媒 流媒体 片段 传输 媒体播放 播放列表 数据 网络 备用 服务 合适 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库系统概括杨冬青第三版 数据库系统概率第5版电子课本 塞班 来电通数据库什么格式 ibm服务器一致性 计算机网络技术数据库 软件开发技术包括哪几个方面 统信uos软件开发 教师尊守网络安全 德宏软件开发专业招生 无限传感网络技术及应用宋文 大涛网络安全工程师 中科国产服务器龙头股 阿里云 数据库 怎么用 亚信安全服务器地址是什么 软件开发招标需要投标吗 数据库文档模板下载 pdu服务器电源怎么样 excel数据库制作 浙江品质刀片服务器定制 手机 google服务器 福冈天气预报软件开发 2022年国家网络安全工作要点 哈利波特怎么推荐卡组给服务器 北京快快网络技术有限公司 江苏惠普服务器虚拟化迁移 网络安全应急实施办法 关于数据库查询以下选项正确的是 宜春管理软件开发 网络安全中的半监督回归算法 清华考研网络安全拟录取
0