DASH / MPD 下载
DASH 用 XML 描述分片,视频和音频常常是两条独立的轨。它能下的前提是没有 DRM 保护。
和 HLS 的区别
| 维度 | HLS | DASH |
|---|---|---|
| 清单格式 | 文本(m3u8) | XML(mpd) |
| 分片容器 | 多为 TS | 多为 fMP4(m4s) |
| 音视频 | 通常复用在一路 | 通常分成独立的自适应集 |
| 常见场景 | 兼容性优先 | 码率切换更细,YouTube 系常用 |
音视频分离意味着什么
一个 mpd 里通常有多个 AdaptationSet:一组是视频(不同分辨率),一组是音频(不同语言或码率)。下载时要各取一路,最后合并。工具会自动选「最高分辨率视频 + 默认音频」,需要换就手动指定。
合并是必要条件
只下视频轨会得到没有声音的文件,只下音频轨会得到纯音轨。合并发生在本地转封装阶段,不重新编码,所以画质无损、速度也快。
能下的与不能下的
| 情况 | 能不能下 | 说明 |
|---|---|---|
| 明文的 mpd,分片可直接请求 | 能 | 最常见的情况 |
mpd 里带 ContentProtection(Widevine / PlayReady) | 不能 | 这是 DRM 保护,我们不提供绕过 |
| 需要登录 Cookie 才能取分片 | 多半不能 | 网页工具没有你的登录态;这类请用扩展在页面内处理 |
| 带时效签名的地址 | 短时间内能 | 签名过期后所有分片都会 403 |
操作与排错
- 粘贴 mpd 地址必须是能直接取到 XML 的地址,不是播放页地址。
- 确认分辨率解析后会列出可选码率;默认最高。文件特别大时先选低一档试。
- 开始下载音视频分片并行拉取,进度按总片数推进。
- 等待合并进度到 100% 后的合并阶段不会显示百分比,日志里会写「合并中」。
提示解析失败,日志显示 XML 里没有 SegmentTemplate
这种 mpd 用外部索引(SegmentList / BaseURL 拼接)。地址可能不完整,回到页面重新取一次完整 mpd。
下完没声音
音频轨没取到或合并失败。看日志里音频轨的分片数是否为 0。
能不能只下音频
可以,把视频轨取消勾选即可,输出 m4a。