拾贝LinkMaw开始下载
教程

M3U8 / HLS 下载

HLS 把一整段视频切成很多小分片,逐个下载再拼起来。理解了这一点,绝大多数「卡住」都有解释。

更新于 2026-11-06 · 适用扩展 1.28.0 / 桌面版 0.8.0

清单长什么样

主清单只列不同码率的子清单,子清单才列真正的分片:

#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=2800000,RESOLUTION=1280x720
720p/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1400000,RESOLUTION=854x480
480p/index.m3u8

子清单里的每一行 .ts(或 .m4s)就是一个分片,#EXT-X-KEY 表示分片被加密。

标签含义对下载的影响
#EXT-X-STREAM-INF多码率入口要选一路,工具默认取最高带宽
#EXT-X-KEY:METHOD=AES-128分片加密,需要 key 地址有 key 且可获取时可解;否则我们不做绕过
#EXT-X-ENDLIST点播(已完结)可以完整下载
没有 ENDLIST直播(还在增长)清单会不断变长,见 直播录制

下载时的三个关键行为

  • 并发拉取:默认多分片同时下,不是一条条排队。所以速度取决于站点单连接带宽,而不是分片数。
  • 失败重试:单个分片失败会重试;连续失败到阈值才整体报错,日志里能看到是哪个分片、什么状态码。
  • 顺序拼接:分片按清单顺序写入,不按下载完成顺序,避免时间轴错乱。

为什么卡在 0.00%

现象原因处理
一直 0/0,进度 0.00%清单请求就失败了看日志状态码:403 补 Referer;404 地址已过期;超时换网络
有总分片数但不下分片请求被拒或跨域多数是防盗链,填源地址;仍失败说明需要登录态
进度涨一阵停住个别分片反复失败等它重试;持续不动就记下日志里的分片序号再排查
进度 100% 但不落盘卡在转封装分片格式异常或磁盘空间不足;换输出目录重试
加密流不要硬试
带 #EXT-X-KEY 且拿不到 key 的流,工具会明确报错。这是内容保护,我们不提供绕过手段,也不写相关教程。

TS 转 MP4 是什么

HLS 分片通常是 MPEG-TS,直接改名成 .mp4 多数播放器打不开。下载完成后会把分片按顺序拼起来并重写容器头,输出标准 MP4。这一步是本地计算,不联网,耗时与文件大小相关。

参数与取舍

选择好处代价
选最高码率画质最好体积最大、耗时最长
选中间码率体积与画质平衡细节会糊
分片并发高总时间短站点可能限流,反而更慢
先小段试下确认地址可用再下整段多一步操作,但省掉白等半小时
先验证再全量
长视频建议先把清单里前几个分片跑通,确认 200 再全量,避免下到 90% 才发现被限流。