从零到一用 N_m3u8DL-RE 下载 MPD/M3U8 流媒体安装、命令到排障的完整实战【免费下载链接】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 是一款跨平台的流媒体下载工具专门解决 MPD、M3U8、ISM 格式视频只能在线看、没法保存的难题点播、直播通吃。全文没有晦涩术语跟着敲命令就能跑通完整下载流程。一个只能在线看的真实下载场景帮同事录课的下午前阵子同事抱着笔记本来找我他买的一门付费在线课只能在网页里看页面干净到连右键菜单都没有视频还被切成 6 秒一段、总共几百个分片。真要手动抓包再拼接人得疯。我打开终端敲了一行命令半小时后整门课变成了硬盘上一个完整的 MP4。这个救星就是 N_m3u8DL-RE——它读取视频的清单文件MPD/M3U8/ISM把成百上千个分片自动拉下来再交给 FFmpeg 合成一个完整文件。这篇文章适合谁如果你也遇到过下面任意一种情况请继续往下读网站在线课程、影视资源没有下载按钮想录制一场正在进行的直播赛事或会议只想下 1080p 清晰度不想要一堆重复轨道遇到 AES 加密或 DRM 流不知从哪下手N_m3u8DL-RE 是什么核心能力与模块地图一句话认识它N_m3u8DL-RE 是一个命令行流媒体下载器支持 DASH(MPD)、HLS(M3U8)、MSS(ISM) 三种主流流媒体格式Windows / macOS / Linux 全平台可用自带简体中文、繁体中文、英文界面。支持格式一览格式清单文件常见后缀点播直播DASHMPD.mpd✅✅HLSM3U8.m3u8✅✅MSSISM.ism/Manifest✅❌源码模块地图想深入了解内部实现可以直接翻源码源码目录职责src/N_m3u8DL-RE.Parser/解析 MPD/M3U8/ISM 清单提取音视频轨道src/N_m3u8DL-RE/DownloadManager/下载调度、直播录制管理器src/N_m3u8DL-RE/Crypto/AES、ChaCha20 等加解密逻辑src/N_m3u8DL-RE/Util/分片合并、字幕处理等工具类src/N_m3u8DL-RE.Common/公共实体、日志、HTTP 工具动手前先确认环境程序本身零依赖但合并和解密阶段建议先装好 FFmpeg。终端里执行ffmpeg -version能打印出版本号就说明没问题如果报command not found后面排障小节有安装办法。解密 ClearKey/DRM 内容时还需要 mp4decrypt 或 shaka-packager到时再装也不迟。N_m3u8DL-RE 安装的三种方式方式一下载预编译版本打开项目的 Release 页面按系统选压缩包Windows 选 win-x64macOS 选 darwin 版本Linux 选 linux-x64。解压后直接运行可执行文件不需要装任何运行时。方式二包管理器一行安装Arch Linux 及衍生版用户用 AUR 最省事# 正式发行版 yay -Syu n-m3u8dl-re-bin # 开发版体验最新功能 yay -Syu n-m3u8dl-re-git方式三从源码构建想追最新改动或做二次开发克隆仓库后用 .NET 编译git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE.git cd N_m3u8DL-RE/src/N_m3u8DL-RE dotnet build -c Release安装后验证无论哪种方式先跑一下版本号确认能用N_m3u8DL-RE --version能打印出类似N_m3u8DL-RE (Beta version) 20251027的信息就说明安装成功了。三分钟跑通第一条下载命令一条最小可用命令程序的用法简单到令人发指把链接或本地清单文件直接丢给它。N_m3u8DL-RE https://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd这是官方测试流多音轨、多字幕非常适合第一次练手。程序会自动解析清单、挑选最佳画质、下载分片并合并全程有进度显示。推荐加上的三个参数实际使用时我习惯顺手带上输出目录、文件名和线程数N_m3u8DL-RE https://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd \ --save-dir ./videos \ --save-name 我的收藏 \ --thread-count 8参数作用--save-dir保存目录不存在会自动创建--save-name自定义文件名比默认的乱码 ID 好认--thread-count并发线程数默认取 CPU 线程数宽带够大可以调到 2 倍左右三个实用小技巧想换中文界面加--ui-language zh-CN支持 en-US / zh-CN / zh-TW不想每次下载都生成日志文件加--no-log输入也可以是本地文件把.m3u8清单下载到本地后N_m3u8DL-RE playlist.m3u8一样能跑多个文件不重名同时下载多条同类型轨道时用--save-pattern让文件名自动带上分辨率和码率N_m3u8DL-RE 清单链接 --save-name video \ --save-pattern SaveName_Resolution_Bandwidth最终得到类似video_1920x1080_5000000.mp4的文件。模板还支持Language、Codecs、FrameRate、MediaType等变量自由组合。精细挑选轨道按分辨率、语言、字幕精准下载很多 DASH 清单里塞着好几档清晰度、五六条音轨、多组字幕默认只下最佳一套。想精细控制用下面这套选择参数。选择语法速览三个选择参数都支持正则格式是字段正则多个条件用冒号拼接最后用forbest|worst|all决定取几条# 只选 1080p 且 HEVC 编码的最佳视频轨 N_m3u8DL-RE 清单链接 -sv res1920*:codecshvc1:forbest # 选最佳英语音轨 N_m3u8DL-RE 清单链接 -sa langen:forbest # 所有带中文字样的字幕全要 N_m3u8DL-RE 清单链接 -ss name中文:forall反向剔除与懒人全选对应的-dv / -da / -ds用来反向剔除不想要的轨道想把全部轨道都下回来用--auto-select一键全选嫌慢就加-mt--concurrent-download让音视频和字幕并发下载只想下字幕只需要字幕时用--sub-only跳过音视频配合--sub-format选择输出格式默认 SRT可切 VTTN_m3u8DL-RE 清单链接 --sub-only --sub-format VTT高级玩法直播录制、密钥解密与定时任务直播录制边播边录直播流的特点是分片无限增长、边播边删。默认先下载完再合并的模式录几小时直播会拖很久开启实时合并后录完即得成品N_m3u8DL-RE https://cmafref.akamaized.net/cmaf/live-ull/2006350/akambr/out.mpd \ --live-real-time-merge不想无限录下去用--live-record-limit设定上限格式是时:分:秒N_m3u8DL-RE 直播链接 \ --live-real-time-merge \ --live-record-limit 02:00:00其他直播选项--live-perform-as-vod把直播当点播一次性拉取--live-pipe-mux用管道把数据实时喂给 FFmpeg 混流--live-fix-vtt-by-audio通过音频起始时间修正 VTT 字幕。⚠️ 网络不够稳定时别开--live-pipe-mux管道内数据读取由 FFmpeg 负责弱网环境容易丢直播数据。想省空间的话实时合并时用--live-keep-segments false关掉分片保留。加密流解密KID:KEY 一把梭HLS 常见 AES-128 加密DASH 常见 CENCClearKey。加密流一般需要KID:KEY形式的密钥。判断方法很简单看清单里有没有#EXT-X-KEYHLS或ContentProtectionDASH字段。N_m3u8DL-RE https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p_ClearKey.mpd \ --key 9eb4050de44b4802932e27d75083e266:166634c675823c235a4a9446fad52e4d多个分片共用同一个 KEY 时可以直接简写--key 密钥值密钥多了写进文件用--key-text-file按 KID 自动查找解密引擎用--decryption-engine切换可选FFMPEG | MP4DECRYPT | SHAKA_PACKAGER默认 MP4DECRYPT没装进 PATH 就用--decryption-binary-path指定完整路径HLS 场景如果已知加密方法、密钥和 IV也可以直接硬指定省去猜流程N_m3u8DL-RE 链接 \ --custom-hls-method AES_128 \ --custom-hls-key 000102030405060708090a0b0c0d0e0f \ --custom-hls-iv 000102030405060708090a0b0c0d0e0f温馨提示请只对你有合法权限的内容使用解密功能工具本身仅用于学习与技术研究。定时任务与区间下载--task-start-at yyyyMMddHHmmss定时执行任务比如--task-start-at 20260815230000--custom-range 05:00-20:00只下载第 5 到 20 分钟适合先试看一段混流与广告过滤-M formatmp4或-M formatmkv:muxermkvmerge下载完成后混流成指定容器--mux-import pathzh-Hans.srt:langchi:name中文 (简体)混流时引入外部音轨/字幕--ad-keyword ad|promo用正则匹配广告分片 URL 并跳过常见报错排查与收尾自查清单症状一提示找不到 FFmpeg合并或解密阶段报 FFmpeg 相关错误多半是没装。Ubuntu/Debian 上sudo apt install ffmpegWindows 用户从 FFmpeg 官网下载后把bin目录加进 PATH或者直接用--ffmpeg-binary-path指定 exe 全路径。症状二下载速度上不去先检查线程数--thread-count可以加大如果是不想占满带宽反而要用限速参数-R支持 Mbps / KbpsN_m3u8DL-RE 链接 --thread-count 16 -R 15M症状三网络不稳分片下载失败分片下载失败会自动重试默认 3 次。弱网环境调高重试次数和超时时间N_m3u8DL-RE 链接 --download-retry-count 10 --http-request-timeout 60走代理用--custom-proxy http://127.0.0.1:8888。症状四合并后文件不完整程序默认会做分片数量校验--check-segments-count发现下载数和预期不符会给出提示。先关掉--del-after-done保留临时分片方便二次排查。通用手段打开 DEBUG 日志出问题先开 DEBUG 看日志基本都能定位到原因N_m3u8DL-RE 链接 \ --log-level DEBUG \ --log-file-path ./download.log--log-level支持DEBUG / INFO / WARN / ERROR / OFF。另外老版本 Windows 自带终端可能不支持本程序界面渲染换 cmder 之类的终端即可正常显示。出发前的自查清单✅ 装好 N_m3u8DL-RE 与 FFmpeg--version验证可用✅ 用官方测试流跑通第一条下载命令✅ 用--save-dir / --save-name / --thread-count规范输出✅ 多轨道用-sv / -sa / -ss精确挑选-mt并发提速✅ 直播用--live-real-time-merge--live-record-limit边录边合并✅ 加密流用--key KID:KEY配合--decryption-engine解密✅ 出问题先开--log-level DEBUG再看日志对症下药三个进阶学习方向通读项目 README里面有全部命令行参数的详细说明和--morehelp示例翻一翻 TestStreams.md覆盖点播、直播、加密、多字幕等场景的官方测试流是练手的最佳素材对照源码目录了解 Parser、DownloadManager 与 Crypto 模块的实现想贡献功能或定制行为时用得上工具再多不如亲手跑通一次。现在就去复制一条测试流链接动手下载你的第一段视频——下次再遇到只能在线看的页面你已经是可以解决问题的人了。【免费下载链接】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),仅供参考