M3U8/MPD 流媒体下载与直播录制实战3 条命令上手 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-REN_m3u8DL-RE 是一款跨平台的流媒体下载器专门面向 M3U8HLS、MPDDASH、ISMSmooth Streaming三种在线视频格式。它把下载下来的分片没法播、清晰度挑不出来、加密内容打不开、直播要干等录完这四类麻烦都压缩进一条命令行里解决内置解密引擎、支持正则选流、下载完自动混流成 mp4/mkv。下面按它解决什么 → 怎么快速跑起来 → 四类场景怎么下 → 怎么更快更稳 → 出问题怎么办的顺序讲清楚。它到底解决什么问题你遇到的麻烦N_m3u8DL-RE 的对策下完是一堆 TS 分片播放器不认识自动合并 -M混流成 mp4/mkv开箱即播一个流里有 10 档画质 5 条音轨不知道下哪个-sv/-sa正则选流按分辨率、语言挑流是 AES / CENC 加密下完打不开内置 MP4DECRYPT / FFMPEG / SHAKA_PACKAGER 解密引擎直播只能录完才能看还占着终端--live-real-time-merge边录边合并录满指定时长自动停3 条命令把工具装到机器上克隆源码并编译它是 .NET 程序编译前需要先装 .NET 10 SDK。源码拿下来直接 publish不折腾项目配置# 克隆源码 git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE cd N_m3u8DL-RE # 发布编译产物落在 bin 的 publish 目录 dotnet publish src/N_m3u8DL-RE/N_m3u8DL-RE.csproj -c Release用版本号验证编译是否成功# 输出 N_m3u8DL-RE (Beta version) 加一串日期版本号即编译成功 src/N_m3u8DL-RE/bin/Release/net10.0/publish/N_m3u8DL-RE --version✅ 从下一节开始示例里的N_m3u8DL-RE都指这个可执行文件。把它重命名、放进 PATH就能在任意目录直接敲。想先拿真实的流练手仓库里的 TestStreams.md 列了一批公开测试链接照着跑一遍即可。点播下载一条命令存出能播的 MP4m3u8 / mpd 下载并混流的命令写法拿到一个点播链接想存成双击就能播的文件加一个-M formatmp4就够了。它会在分片全部下完后调用 ffmpeg 把音视频重新封装# -M formatmp4 指定混流容器想存 MKV 就改成 formatmkv N_m3u8DL-RE https://example.com/video.m3u8 \ --save-name 我的视频 \ --save-dir ./downloads -M formatmp4跑完去 downloads 目录.mp4已经在等播放了。 不想混流就干脆不加-M分片会保留在输出目录里之后可以用mux、merge工具命令自己合。只要片中的一段别下整个文件源站分片动辄上千个而你只需要中间那 15 分钟时--custom-range按分片起始时间过滤保留完整分片不做精确裁切能省大量流量# --custom-range 05:00-20:00 只保留第 5 分钟到第 20 分钟的分片 N_m3u8DL-RE https://example.com/video.m3u8 --custom-range 05:00-20:00⚠️ 边界处的分片会整片保留所以实际时长可能略长于 15 分钟这是设计行为不是 bug。画质与音轨挑选-sv / -sa 选流实战最佳画质 指定语言音轨多档分辨率、多条音轨的 master 流里最省事的组合是视频选 best、音轨锁语言# -sv best 取最高清晰度-sa langen:forbest 取最佳英文音轨 N_m3u8DL-RE https://example.com/master.m3u8 \ -sv best -sa langen:forbest \ --save-name 高清版 -M formatmp4结果就是一条分辨率拉满、配英文声轨的 mp4。 想精确到某一档分辨率写-sv res1920*星号是通配符音轨想一条不落就-sa all。更多维度码率、帧率、声道、HDR的写法见 README.md 的--morehelp select-video说明。直播录制边录边合并不用干等实时合并 录满 30 分钟自动停--live-real-time-merge让分片一边下、一边合文件持续可播--live-record-limit用HH:mm:ss写录制时长上限到点自动收工# --live-record-limit 00:30:00 表示录满 30 分钟自动结束 N_m3u8DL-RE https://example.com/live.m3u8 \ --live-real-time-merge --live-record-limit 00:30:00 \ --save-name 直播录制跑完你拿到的不是原始分片而是一个边录边长、30 分钟自动收尾的直播文件。网络抖动时的两个旋钮 管道混流--live-pipe-mux在弱网下容易丢直播数据网络不稳就省掉它想让播放列表的刷新节奏固定下来用--live-wait-time 秒数手动设定间隔不交给程序自适应。解密下载加密流的命令写法--key 按 KID:KEY 顺序喂密钥CENC / AES 加密的流直接下下来是打不开的把密钥按KID 在前、KEY 在后拼进--key即可程序会调用 mp4decrypt / ffmpeg / shaka-packager 完成解密# 密钥格式 KID:KEYKID 在前多条密钥就写多个 --key N_m3u8DL-RE https://example.com/encrypted.m3u8 \ --key 0123456789abcdef0123456789abcdef:89abcdef0123456789abcdef01234567 \ --decryption-engine MP4DECRYPT --save-name 解密视频 -M formatmp4产出是一个已解密、能正常播放的 mp4。 解密引擎默认 MP4DECRYPT个别流解不动时加--decryption-engine FFMPEG换一条路再试。更快更稳参数最速调优完整参数在 README.md 的命令行章节这里只挑对体感影响最大的四个参数推荐值适用场景--thread-count168~32宽带 多核 x86提速主力默认取本机 CPU 线程数一般不用动--download-retry-count83~20网络不稳、频繁断连默认 3 次不够用--custom-range05:00-20:00只要某几段分片省流量-R15M限速到 15Mbps别把带宽占满配套建议把--http-request-timeout 60设大一点重试和超时一起上弱网下的完整度会明显变好。出问题怎么办4 个高频报错自查URL 无法解析或拿回的是 HTML 页面先别怀疑流格式多半是请求头缺失。三步走curl 确认返回的真是 m3u8/mpd 而不是网页 → 检查缺没缺 Referer / Cookie → 用-H补上再下# -H 可重复使用逐个补上缺的请求头 N_m3u8DL-RE https://example.com/video.m3u8 \ -H Referer: https://example.com -H User-Agent: Mozilla/5.0文件下完了但打不开或花屏基本锁定在加密没解、或者密钥顺序写反。先确认这条流是否加密再核对--key必须是 KID 在前、KEY 在后最后换解密引擎重试# 换 FFMPEG 引擎再解一次 N_m3u8DL-RE https://example.com/video.m3u8 --key KID:KEY --decryption-engine FFMPEG -M formatmp4下载中途频繁中断、报超时网络抖动的典型症状按顺序压重试调到 8 → 线程降到 4 减轻并发压力 → 必要时挂代理# 8 次重试 4 线程把断连稳住 N_m3u8DL-RE https://example.com/video.m3u8 --download-retry-count 8 --thread-count 4 需要走代理时加--custom-proxy http://127.0.0.1:7890。-M 混流时提示找不到 ffmpegmp4/mkv 混流全靠 ffmpeg它没装或不在 PATH 里就会在此步报错。三选一装好 ffmpeg 并确认在 PATH → 用--ffmpeg-binary-path指到可执行文件全路径 → 或者先不加-M把分片下完再自己合并# 显式指定 ffmpeg 全路径 N_m3u8DL-RE https://example.com/video.m3u8 --ffmpeg-binary-path /usr/local/bin/ffmpeg -M formatmp4⚠️ 另有一个环境坑老版本 Windows 的自带终端可能跑不动 .NET 程序换 cmder 之类的终端再试即可其余平台行为一致。把三个动作记牢就够用了加密流喂对KID:KEY格式的密钥、选画质音轨交给-sv/-sa而不是整条硬下、直播加--live-real-time-merge边录边合。点播、直播、解密三条链路都跑顺之后日常下载场景基本都被覆盖了。【免费下载链接】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),仅供参考