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
录制一场 2 小时的直播,断流在第 40 分钟,重连后前 40 分钟的片段直接丢了。换用 N_m3u8DL-RE 之后这个问题再没出现过。它是一个跨平台的开源流媒体下载工具,能把 MPD / M3U8 / ISM 三种格式的流解析成可播放的本地文件,加密解密、直播录制、音轨字幕选择都包了。
下面按顺序走一遍:先装好工具下第一条流,再啃下解密和直播录制这两块最难的骨头,最后学怎么按自己的场景挑质量、做批处理。
第 1 站|在 Windows/Linux/macOS 装好工具并下好第一条流
安装与首次运行容易卡在哪
大多数人第一次跑会卡两处:装完命令行提示找不到命令;或者下载完一个文件,播放器却说格式不支持。
安装步骤与第一条下载命令
# 安装:克隆后编译(也可以直接去 Releases 页面下载最新发行包) git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE cd N_m3u8DL-RE/src && dotnet build -c Release # 下载:粘贴 URL 就能跑 N_m3u8DL-RE "https://example.com/stream.m3u8"🔧--thread-count设置下载线程数,默认取本机 CPU 线程数,一般不用动 ⚠️ 文件下完却播放不了,多半不是下载失败,而是音视频被拆成了多个文件,需要加-M format=mp4混流
安装方式怎么选
| 安装方式 | 耗时 | 需要 .NET SDK | 适合谁 |
|---|---|---|---|
| Releases 下载发行包 | 1 分钟左右 | 否 | 普通用户,三大系统都有对应包 |
git clone+dotnet build | 5 分钟左右 | 是(6.0+) | 想固定版本、或要改源码的开发者 |
Arch 系:yay -Syu n-m3u8dl-re-bin | 一条命令 | 否 | Arch Linux 及其衍生版 |
想往下翻源码的话,MPD/M3U8/ISM 的解析逻辑都集中在 src/N_m3u8DL-RE.Parser/ 里。
第 2 站|加密流解密与直播防丢片段录制
解密和直播录制容易卡在哪
最容易劝退的是两处:加密流下出来是一堆无法播放的文件;直播一断流,前半段就没了。这两处其实都是参数问题,不是网络问题。
解密配置与直播录制命令
[!WARNING] 请只下载你拥有合法权限的内容,版权责任由使用者自行承担。
N_m3u8DL-RE "https://example.com/encrypted.m3u8" \ --key "KID:KEY" \ # 密钥格式 KID:KEY,多个密钥就传多个 --key --decryption-engine MP4DECRYPT # 也可选 FFMPEG / SHAKA_PACKAGER🔧 默认解密引擎是 MP4DECRYPT,需要本机先装好 mp4decrypt;不想多装依赖就切 FFMPEG ⚠️ 密钥可能是 HEX 也可能是 Base64,两者搞混是“解密失败”的第一大原因
直播录制
N_m3u8DL-RE "https://live.example.com/stream.m3u8" \ --live-real-time-merge \ # 实时合并,边录边输出可播放文件 --live-record-limit "2:30:00" \ # 录满 2 小时 30 分自动停,防止占满磁盘 --live-wait-time 60 # 断流后最多等 60 秒等新分片[!TIP] 还有个更快的
--live-pipe-mux(管道实时混流成 TS),但官方明确提醒:网络不稳定时 ffmpeg 管道读取容易丢直播数据,只在网络稳定时开。
⚠️ 直播是长任务,线程数保持默认即可,调太高容易被 CDN 限流
直播录制模式怎么选
第 3 站|按你的场景改装:轨道选择、字幕与批量下载
选轨和批处理容易卡在哪
不指定参数时,输出什么全看流给什么。想要 4K、特定语言、字幕,或者只要内容的某一段,都得自己告诉工具。
选轨、字幕与混流命令
N_m3u8DL-RE "https://example.com/course.mpd" \ -sv res="1920*":for=best \ # 选最佳 1080p 视频轨 -sa lang=en:for=best \ # 选最佳英语音轨 --sub-format SRT \ # 字幕输出为 SRT -M format=mp4 # 完成后把音视频合成一个 MP4🔧-sv/-sa/-ss都是正则选轨,还能加:codecs=hvc1(HEVC)或:lang=zh(中文)继续细化 ⚠️ 选的码率超出带宽能力时会频繁下载失败,先怀疑选轨,别急着怀疑网络
下载策略怎么选
- 要单个可播放文件:加
-M format=mp4,把散落的音视频混成一个 MP4 - 只要第 5 到第 20 分钟:
--custom-range 05:00-20:00,时间和空间都省 - 批量下整季课程:URL 写进文本文件,用 shell
while read循环调用,配合--save-pattern "<SaveName>_<Resolution>"避免重名覆盖 - 录直播又怕占盘:
--live-record-limit定时长,--tmp-dir指到容量更大的盘
下一步行动
- 跑一次
N_m3u8DL-RE --version确认安装成功 - 用官方 TestStreams.md 里的测试流(含直播与加密样例)下第一条
- 装好 mp4decrypt,把一段加密流跑通
- 录 10 分钟直播,验证实时合并和断流等待都生效
四条做完,就可以放心拿自己的任务开练了。
【免费下载链接】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),仅供参考