西瓜.m3u8 清单手册

产品手册 · 清单格式与播放

西瓜.m3u8 是一份怎样的播放清单

西瓜.m3u8 指一份以 UTF-8 编码保存、扩展名为 .m3u8 的播放清单文本文件。它不存放画面,也不容纳音频流,而是用一行行纯文本把播放器需要的线索排好队:哪一段先播、每段多长、片段从哪个地址取、是否加密、有没有多套码率可选。把这份文件打开,就像展开一张写给播放器的施工图。

下面按“清单结构 → 播放路径 → 参数对照 → 常见问题”的顺序,把这类文件从写法到实际播放逐层讲清,方便你在桌面、手机与浏览器三端分别找到合适的打开方式。

更新日期 2026-11-07适用格式 HLS 播放清单编码 UTF-8

逐行解读:西瓜.m3u8 的标签与地址

清单的第 8 行与第 3 行往往看不出区别,但播放器正是靠这些以 # 开头的标签决定行为。下面按出现顺序梳理最常用的一组。

  1. 01
    #EXTM3U

    首行标记,必须存在。播放器见到它才确认这是一份可解析的清单,而不是随手保存的文本。

  2. 02
    #EXT-X-VERSION

    声明清单遵循的兼容版本。版本号影响哪些标签可以被理解,写得过高会让旧播放器直接放弃解析。

  3. 03
    #EXT-X-TARGETDURATION / #EXTINF

    前者给出分片时长的整体上限,后者逐条标注紧随其后的那一段分片有多长。二者配合,播放器才能估算缓冲与切换时机。

  4. 04
    #EXT-X-KEY

    加密标记。出现时说明分片受保护,并指明解密方式与密钥地址的书写形式;没有这一行则表示分片可直接读取。

  5. 05
    分片地址行

    紧跟在 #EXTINF 下面的普通文本行,可以是相对路径,也可以是完整地址。相对路径会以清单所在位置为基准拼接。

  6. 06
    #EXT-X-STREAM-INF

    主清单中出现,用于列出多套码率。每一行后面跟着一路独立清单的地址,播放器据此在流畅与清晰之间自动切换。

一个容易忽略的细节:清单里的空行通常只是排版,不影响解析;但标签与它要描述的地址行之间不能插入无关行。

三端播放路径:桌面、手机与浏览器

同一份西瓜.m3u8,在不同设备上的处境并不一样。下面按使用场景给出可操作的路径。

参数与兼容性对照

下表把常见标签、它们的作用以及在各端需要注意的差异放在一处,便于快速核对。

标签 / 参数作用桌面移动端
#EXTM3U清单身份声明,首行必需必须必须
#EXTINF标注单段分片时长普遍支持多数支持
#EXT-X-KEY声明加密方式与密钥位置支持较完整视 App 而定
#EXT-X-STREAM-INF列出多码率清单,供自动切换支持部分支持
#EXT-X-ENDLIST标记清单已结束,非直播支持支持

对照表只描述格式层面的常见差异,具体表现仍取决于播放器的实现版本。

常见问题

西瓜.m3u8 打不开,先检查什么?

依次确认三件事:文件首行是否为 #EXTM3U;分片地址是相对路径还是绝对地址,前者需要与清单保持原有目录关系;地址是否带多余的空格或全角符号。多数“打不开”都出在这三处。

为什么只有画面没有声音,或者只播几秒就停?

清单本身不携带音视频,只做索引。若分片缺失或地址失效,播放器拿到前几段后就会停住。可核对清单中地址行的数量与分片实际是否齐全。

清单里出现多路地址,播放器会选哪一个?

存在 #EXT-X-STREAM-INF 时,播放器会结合网络状况与设备能力挑选一路;只有单路清单时则没有选择余地,直接播放即可。

可以只用浏览器播放吗?

Safari 系内核可原生播放;其余内核往往需要页面预先引入 HLS 加载脚本。若页面已自带该能力,把清单地址粘贴进去就能开始。

关闭广告,继续浏览

正在加载赞助内容…