N_m3u8DL-RE 使用教程:安装、命令、GUI 与 Mac 设置完整指南(2026)

想下载 N_m3u8DL-RE 又怕装完跑不起来?N_m3u8DL-RE(常被简称 n_m3u8dl、m3u8dl)是开源、跨平台的流媒体下载工具,支持 HLS、DASH、MSS,点播和直播都能处理。
本文内容已对照官方 README 与最新版本(v0.6.0-beta,2026 年 6 月)逐一核对。网络上不少旧教程还在用已经不存在的参数,下面的命令都是目前真的能用的写法。
请只下载你有权保存的流媒体:自己录制的内容、公有领域或开放授权视频,或服务条款允许下载的内容。N_m3u8DL-RE 不会(也无法)移除 DRM。
N_m3u8DL-RE 是什么?
N_m3u8DL-RE(GitHub:nilaoda/N_m3u8DL-RE)是开发者 nilaoda 维护的命令行工具,以 C# / .NET 撰写,发布为无需安装 .NET 运行环境的单文件可执行程序。
它取代了旧版 m3u8DL-CLI(只支持 Windows,已停止维护),RE 是 Remake(重制)的意思。
主要特点
- ✅ 支持 HLS / DASH / MSS,点播与直播皆可
- ✅ 多线程下载分片(
--thread-count,默认等于 CPU 线程数) - ✅ 可依分辨率、编码、语言、码率挑选轨道(
-sv/-sa/-ss) - ✅ 标准 HLS AES-128 自动解密
- ✅ 自定义 HTTP Header(Referer、User-Agent、Cookie)
- ✅ 直播录制,可设置录制时长、边录边合并
- ✅ Windows / macOS / Linux / Android 皆有 x64 与 ARM64 版本
想先了解 M3U8 下载的原理,可以看 👉 M3U8 下载教程
安装方式
所有版本都在 GitHub Releases 页面,按你的系统选择文件:
| 系统 | 要下载的文件(v0.6.0-beta) |
|---|---|
| Windows 10/11(一般电脑) | N_m3u8DL-RE_v0.6.0-beta_win-x64_20260629.zip |
| Windows ARM 笔记本 | ..._win-arm64_....zip |
| Apple Silicon Mac(M1~M4) | ..._osx-arm64_....tar.gz |
| Intel Mac | ..._osx-x64_....tar.gz |
| Linux x64 | ..._linux-x64_....tar.gz |
| Linux ARM64(例如树莓派 64 位) | ..._linux-arm64_....tar.gz |
第 0 步:先装 ffmpeg(合并必备)
N_m3u8DL-RE 自己负责下载分片,但最后合并、封装成 MP4/MKV 要靠 ffmpeg。没装的话,下载到最后会出现「找不到 ffmpeg」的错误。
- Windows:到 gyan.dev 下载,把
ffmpeg.exe放在跟N_m3u8DL-RE.exe同一个文件夹(或加入 PATH) - macOS:
brew install ffmpeg - Linux:
sudo apt install ffmpeg(Debian/Ubuntu)
也可以用 --ffmpeg-binary-path "C:\Tools\ffmpeg.exe" 直接指定路径。
Windows 安装
- 下载
win-x64的 zip 并解压,例如放到C:\Tools\N_m3u8DL-RE\ - 把
ffmpeg.exe放进同一个文件夹 - 在该文件夹打开 Windows Terminal 或 PowerShell,运行:
.\N_m3u8DL-RE.exe "https://example.com/stream.m3u8"
较旧 Windows 内置的
cmd.exe可能无法正常显示交互界面,建议改用 Windows Terminal(或 cmder)。
macOS 安装
# 以 Apple Silicon 为例,Intel Mac 请改用 osx-x64
tar -xzf N_m3u8DL-RE_v0.6.0-beta_osx-arm64_20260629.tar.gz
chmod +x N_m3u8DL-RE
# 移除下载隔离标记,让 Gatekeeper 放行
xattr -d com.apple.quarantine N_m3u8DL-RE
./N_m3u8DL-RE "https://example.com/stream.m3u8"
如果 macOS 跳出 「无法打开 N_m3u8DL-RE,因为无法验证开发者」,运行上面的 xattr 命令就能解决。另一个方法是到 系统设置 → 隐私与安全性,按 「强制打开」后再运行一次。
想在任何文件夹都能直接调用,就把它移到 PATH:
sudo mv N_m3u8DL-RE /usr/local/bin/
N_m3u8DL-RE 没有官方的 Homebrew 软件包,请从 GitHub Releases 下载。
Linux 安装
tar -xzf N_m3u8DL-RE_v0.6.0-beta_linux-x64_20260629.tar.gz
chmod +x N_m3u8DL-RE
sudo mv N_m3u8DL-RE /usr/local/bin/
Arch Linux 可以从 AUR 安装社区维护的软件包(非作者本人维护):
yay -Syu n-m3u8dl-re-bin
基本使用方法
最简单的下载命令
N_m3u8DL-RE "https://example.com/stream.m3u8"
在一般终端运行时,工具解析完播放列表后会弹出菜单,列出可用的视频、音频和字幕轨道。用方向键移动、空格键勾选,按 Enter 开始下载。
不想手动选、直接抓最佳轨道:
N_m3u8DL-RE "https://example.com/stream.m3u8" --auto-select
指定输出文件名与文件夹
N_m3u8DL-RE "https://example.com/stream.m3u8" --save-name "my_video" --save-dir "D:\Downloads"
指定画质
用 -sv(--select-video)搭配正则表达式筛选:
# 最佳画质
N_m3u8DL-RE "https://..." -sv best
# 720p 中最好的一条(宽度 1280)
N_m3u8DL-RE "https://..." -sv res="1280*":for=best
# 只要 4K HEVC
N_m3u8DL-RE "https://..." -sv res="3840*":codecs=hvc1:for=best
指定音频与字幕
# 最佳英文音轨
N_m3u8DL-RE "https://..." -sa lang=en:for=best
# 所有音轨与所有字幕
N_m3u8DL-RE "https://..." -sa all -ss all
输出成单一 MP4
默认情况下视频和音频可能分成两个文件。要在下载完成后合并成一个 MP4:
N_m3u8DL-RE "https://..." --auto-select -M format=mp4
多音轨、多字幕的话建议用 -M format=mkv。
进阶使用:自定义 Headers、Cookie 与加密流媒体
自定义 Referer 和 Headers
很多 CDN 会检查请求来源。如果流媒体在浏览器能播、用 CLI 却失败,把浏览器本来就会送出的 headers 一起带上即可。参数是 -H(--header):
N_m3u8DL-RE "https://example.com/stream.m3u8" \
-H "Referer: https://example.com/" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
带入 Cookie(登录后的流媒体)
N_m3u8DL-RE "https://example.com/stream.m3u8" \
-H "Cookie: session_id=abc123; token=xyz"
适用于你本来就已登录、有权观看的流媒体,带入自己浏览器的 session cookie 即可;不要使用他人账号或网络流传的 cookie。
AES-128 加密流媒体
如果 M3U8 内有 #EXT-X-KEY:METHOD=AES-128,N_m3u8DL-RE 会依播放列表里的 URI 取得密钥并自动解密每个分片,不需要额外参数。
如果你手上已经有密钥(例如测试自己产出的加密 HLS),但密钥网址连不到,可以直接指定。密钥可以是文件、HEX 或 Base64:
N_m3u8DL-RE "https://..." \
--custom-hls-method AES_128 \
--custom-hls-key "key.bin" \
--custom-hls-iv "0x00000000000000000000000000000000"
关于
--key和--key-text-file:这两个参数用于 CENC 加密的 MP4/DASH 内容,而且前提是你本来就持有解密密钥(例如自己封装的内容)。它们无法从 Netflix、Disney+ 等 DRM 服务取得密钥,本文也不涵盖这部分。
HLS 加密原理请看 👉 M3U8 加密与 DRM 解析
下载速度:线程数 vs. 轨道并行
这两个参数很常被搞混:
# 分片下载的线程数(默认 = CPU 线程数)
N_m3u8DL-RE "https://..." --thread-count 16
# 让选好的视频、音频、字幕轨道同时下载
N_m3u8DL-RE "https://..." -mt
-mt(--concurrent-download)是开关,后面不接数字。想限速可以用 -R 15M(--max-speed)。
⚠️ 线程开太高可能被服务器限流或封 IP,建议先用默认值,不够再往上调。
录制直播
# 录 1 小时,边录边合并
N_m3u8DL-RE "https://example.com/live.m3u8" \
--live-real-time-merge \
--live-record-limit 01:00:00
加上 --live-perform-as-vod 则是把直播列表目前已有的内容当成一般视频下载。
只下载其中一段
# 第 5 分钟到第 20 分钟
N_m3u8DL-RE "https://..." --custom-range 05:00-20:00
N_m3u8DL-RE GUI:图形界面版本
N_m3u8DL-RE 本身只有命令行。如果你比较想用鼠标操作,社区有几个包装成 GUI 的项目。使用时一样要另外下载 N_m3u8DL-RE(和 ffmpeg),再让 GUI 指向它们:
| 项目 | 平台 | 说明 |
|---|---|---|
| nilaoda/N_m3u8DL-RE-SimpleG | 浏览器(网页) | 原作者做的简易命令生成器 |
| naravid19/N_m3u8DL_RE_GUI | Windows | 2026 年仍持续更新,支持批量下载 |
| LennoC/N_m3u8DL-RE_SimpleBatGUI | Windows(.bat) | 菜单式操作,预设单个、批量、直播录制 |
这些都是第三方项目,使用前请先看该仓库的近期更新和 issues,而且只从 GitHub 下载。
M3U8X 是什么?跟 N_m3u8DL-RE 有什么不同?
M3U8X 是 Windows 上的图形界面下载工具,主打不熟命令行的一般用户。
| 功能 | N_m3u8DL-RE | M3U8X |
|---|---|---|
| 操作方式 | 命令行(可搭配社区 GUI) | 图形界面(GUI) |
| 平台 | ✅ Windows / macOS / Linux / Android | ⚠️ 只有 Windows |
| 自定义 Header | ✅ 完整支持 | ⚠️ 有限支持 |
| AES-128 | ✅ 自动 | ✅ 支持 |
| 开源 | ✅ MIT 授权 | ❌ 闭源 |
| 免费 | ✅ | ✅ |
结论:N_m3u8DL-RE 功能更完整且跨平台;如果你只用 Windows、完全不想碰终端,M3U8X 比较简单。
什么时候用工具下载,什么时候用在线工具?
| 情境 | 建议方案 |
|---|---|
| 快速测试流媒体能否播放 | M3U8Go 在线播放器 最方便 |
| 短片(30 分钟内)下载 | HLS 浏览器下载工具 免安装 |
| 长片 / 需要自定义 Header | N_m3u8DL-RE 最稳 |
| 录制直播 | N_m3u8DL-RE |
| 批量下载多个流 | N_m3u8DL-RE 命令行脚本 |
| 不懂命令行的用户 | 社区 GUI 或本站在线工具 |
常见问题 FAQ
N_m3u8DL-RE 是免费的吗?
是的,完全开源免费,授权条款为 MIT License,可以自由使用、修改和分发。
m3u8dl 跟 N_m3u8DL-RE 是同一个东西吗?
m3u8dl、n_m3u8dl、N_m3u8DL-RE.exe 通常都是指这个工具,或它已停止维护的前身 m3u8DL-CLI。请一律到 GitHub(nilaoda/N_m3u8DL-RE) 下载最新的 N_m3u8DL-RE。
N_m3u8DL-RE 有 GUI 版本吗?
官方没有,只有命令行版本。社区做的图形界面请看上方「N_m3u8DL-RE GUI」段落。
Mac(M1/M2/M3/M4)可以用吗?
可以。Apple Silicon 下载 osx-arm64 版本(Intel Mac 用 osx-x64),对可执行文件执行 chmod +x 和 xattr -d com.apple.quarantine,再用 Homebrew 装 ffmpeg 即可。
出现「找不到 ffmpeg」怎么办?
最后合并需要 ffmpeg。把 ffmpeg 放在跟 N_m3u8DL-RE 同一个文件夹、加入 PATH,或用 --ffmpeg-binary-path 指定路径。
为什么我的下载出现 403 错误?
403 代表服务器拒绝请求,通常是少了浏览器会送的 Referer、User-Agent 或 token,用 -H 补上即可。更多错误解析 👉 M3U8 常见错误修复
N_m3u8DL-RE 可以下载 DRM 保护的流媒体吗?
不行。Netflix、Disney+ 等 DRM 保护的服务无法用这种方式下载。详情请看 👉 M3U8 加密与 DRM 解析
下载速度很慢怎么办?
适度调高 --thread-count、加上 -mt 让影音同时下载,或用 --custom-proxy 设置代理。更多方法 👉 M3U8 下载速度慢解法
视频和声音分成两个文件 / 下载后没有声音怎么办?
加上 -M format=mp4 让工具把轨道合并成一个文件,并确认有选到音轨(-sa best 或 --auto-select)。如果是音频编码本身不兼容(例如某些播放器不支持 MP4 里的 AC-3),再用 ffmpeg 转码。详见 👉 M3U8 转换没声音修复
想立即测试您的 M3U8 链接吗?
🚀 立即测试 M3U8 在线播放器