三步下载 DASH/HLS 流媒体:N_m3u8DL-RE 使用指南
【免费下载链接】N_m3u8DL-RECross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文.项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE
N_m3u8DL-RE 是一款跨平台命令行流媒体下载工具,支持 DASH(.mpd)、HLS(.m3u8)、MSS(.ism)三种协议的点播下载、直播录制和加密流解密。如果你手里有一个流地址,想把它存成本地可播放的文件,这个工具就能做到。
什么场景用得上它
你在浏览器里打开一个直播页面,右键"视频另存为"却只能存下一个打不开的 .m3u8 文件,这就是流媒体:视频被切成一段段小文件,.m3u8 或 .mpd 只是播放清单。N_m3u8DL-RE 负责读取清单、下载全部分片并合并成完整的 mp4 或 mkv。
点播流通常提供多路不同分辨率、语言、字幕的轨道。工具支持用正则表达式筛选,帮你挑出想要的那一路,不用手动翻地址。
核心功能速查
| 功能 | 说明 |
|---|---|
| 协议支持 | DASH、HLS、MSS;点播与直播(DASH/HLS)录制 |
| 轨道选择 | 按分辨率、语言、编码等条件正则筛选,-sv best直接选最佳 |
| 加密解密 | 内置 AES-128、SAMPLE-AES、CHACHA20(Crypto 模块);CENC 支持--key传入密钥 |
| 字幕 | 提取为 SRT 或 VTT,可自动修正时间轴 |
| 直播录制 | 时长限制、实时合并、管道 + ffmpeg 实时混流到 TS |
📦 三步完成安装与首次下载
第一步,获取源码:
git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE第二步,编译程序(需要 .NET 10 SDK,见 N_m3u8DL-RE.csproj):
dotnet build src/N_m3u8DL-RE -c Release第三步,用官方测试流验证(链接来自 TestStreams.md):
dotnet run --project src/N_m3u8DL-RE -- "https://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd"默认按本机 CPU 线程数并发下载,完成后自动合并分片并删除临时文件。
⚙️ 进阶用法:部分下载与密钥解密
只下载部分内容。长视频只想截取一段时,--custom-range支持分片序号或时间点:
dotnet run --project src/N_m3u8DL-RE -- "<url>" --custom-range 05:00-20:00解密加密流。DASH 普遍使用 CENC 加密,拿到 KID/KEY(可从页面分析得到)后直接传入,解密完可混流为 mp4:
dotnet run --project src/N_m3u8DL-RE -- "<url>" --key KID:KEY -M format=mp4混流依赖 ffmpeg,也可改用 mkvmerge。
下载常见问题速答
Q:下载时出现 403 或要求登录?A:用-H附加请求头,例如-H "Cookie: xxx" -H "User-Agent: iOS",可多次传入。
Q:直播能否录固定时长?A:可以。--live-record-limit 01:30:00表示录 90 分钟后退出;--live-real-time-merge会实时合并,不必等录完再处理。
Q:手头没有流地址,想验证工具是否可用?A:仓库里的 TestStreams.md 列有多音轨 DASH、直播、AES 加密 HLS 等测试流,可直接用来跑通流程。
完整参数列表在 README.md;流解析逻辑在 N_m3u8DL-RE.Parser,直播录制管理在 DownloadManager,想深入某项行为时可以从这两处读起。
【免费下载链接】N_m3u8DL-RECross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文.项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考