ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

N_m3u8DL-RE 流媒体下载器:10 分钟完成第一次 M3U8/MPD 下载

N_m3u8DL-RE 流媒体下载器:10 分钟完成第一次 M3U8/MPD 下载 N_m3u8DL-RE 流媒体下载器10 分钟完成第一次 M3U8/MPD 下载【免费下载链接】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 是一个跨平台的流媒体下载器支持 MPDDASH、M3U8HLS、ISMMSS三种协议的点播与直播内容可在 Windows、Linux、macOS 上运行。只要你拿到了在线视频的直链照本文命令操作10 分钟内就能完成第一次下载不需要编程背景。适用场景什么时候需要它在线点播离线保存你已有 m3u8/mpd 直链想把它存成本地 mp4/mkv 文件离线观看。直播录制录制比赛、电台等直播流按时间自动停录边录边合并成完整文件。加密流处理拿到 CENC、AES-128、CHACHA20 加密流的内容密钥后下载并解密成可播放文件。多音轨多字幕抓取一次性把某语言的全部音轨、字幕轨都下载下来。只下载部分内容长视频或长直播只截取其中几分钟用时间范围参数控制。如何安装 N_m3u8DL-RE 各平台最短路径Windows / macOS到项目 Releases 页面下载对应平台的预编译二进制解压后把可执行文件放到 PATH 中即可。Arch LinuxAUR 有现成包。其他 Linux / 源码构建需要 .NET 10 SDK用 dotnet 命令行构建。# Arch Linux 及衍生版AUR 包发行版 yay -Syu n-m3u8dl-re-bin # 源码构建需 .NET 10 SDK git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE cd N_m3u8DL-RE dotnet build src/N_m3u8DL-RE/N_m3u8DL-RE.csproj -c Release装完后用一条命令验证N_m3u8DL-RE --version能输出版本号即安装成功加--help可查看全部参数。第一次运行下载一个测试流 用仓库TestStreams.md里的公开测试流做第一次下载N_m3u8DL-RE https://storage.googleapis.com/shaka-demo-assets/angel-one-hls/hls.m3u8输出分三段先拉取并解析播放列表打印可用轨道和本次选中的轨道然后逐分片下载并显示进度完成后给出输出文件路径、大小和速度统计临时文件默认自动删除。文件默认保存在当前目录想指定位置用--save-dir指定文件名用--save-name。参数速览按任务分四组 同一参数只在第一次出现处解释后面章节的命令直接照抄即可。选流与输出质量N_m3u8DL-RE URL -sv res1920*:forbest -sa best -ss name中文:forall -M mp4 --save-name demo-sv正则筛选视频流可用字段有id/lang/name/codecs/res/frameforbest表示在命中项里选最佳。建议值best默认。-sa/-ss音轨、字幕轨语法与-sv相同如-sa langen:forbest。--auto-select自动选各类型最佳轨道免写规则。建议值不确定流结构时开启。-M全部下载完成后把分离的音视频混流成一个文件取值mp4或mkv。建议值mp4。--save-pattern文件名模板变量如SaveName、Resolution、Language多流下载防重名。并发与网络N_m3u8DL-RE URL --thread-count 8 --download-retry-count 5 --http-request-timeout 30 -R 20M--thread-count下载线程数。建议值默认自动取 CPU 线程数家宽环境下 8 以内。--download-retry-count单分片失败重试次数。建议值默认 3网络不稳时 5。--http-request-timeout单次 HTTP 请求超时秒。建议值默认 100。-R限速支持 Kbps/Mbps 单位如15M。--custom-proxy指定代理如http://127.0.0.1:8888--use-system-proxy默认开启走系统代理。直播录制专项N_m3u8DL-RE URL --live-real-time-merge --live-wait-time 5 --live-take-count 16 --save-name live--live-real-time-merge录制时实时合并分片录完即成完整文件。建议值开启。--live-wait-time直播列表刷新间隔秒。建议值接近源站分片时长常见 2~10。--live-take-count首次连接拉取的分片数。建议值默认 16。--live-pipe-mux通过 ffmpeg 管道实时混流到 TS 文件。建议值网络稳定时才开详见排障一节。加密与密钥N_m3u8DL-RE URL --key KID:KEY --decryption-engine FFMPEG -M mp4--key解密密钥格式为KID:KEY多个 KID 就重复传多个--key单密钥流可直接只填 KEY。--decryption-engine解密引擎可选FFMPEG/MP4DECRYPT/SHAKA_PACKAGER。建议值系统只有 ffmpeg 时填FFMPEG。--custom-hls-key/--custom-hls-iv/--custom-hls-method手动指定 HLS 的密钥、IV 与加密方式适合播放列表里密钥信息缺失或错误时使用。需要如实说明N_m3u8DL-RE 不支持 Widevine、FairPlay、PlayReady 这类完整 DRM 方案以上密钥参数只适用于你自己已经拿到内容密钥例如从浏览器网络请求中提取的 CENC、AES-128、CHACHA20 加密流。场景实战三个常见任务下载多码率 DASH 并挑出 1080p目标多码率源站只取 1080p 视频和最佳音轨合成一个 mp4。N_m3u8DL-RE https://dash.akamaized.net/dash264/TestCases/2c/qualcomm/1/MultiResMPEG2.mpd \ -sv res1920*:forbest -sa best -M mp4 --save-name demo为什么这么配该测试流有 240p~1080p 多个码率-sv res1920*只保留 1080p 一档DASH 的音视频是分离轨道-M mp4让它们合并后能直接播放。限时录制直播流 5 分钟目标录制测试直播 5 分钟后自动停止输出完整文件。N_m3u8DL-RE https://cmafref.akamaized.net/cmaf/live-ull/2006350/akambr/out.mpd \ --live-real-time-merge --live-wait-time 5 --live-record-limit 00:05:00 \ --save-name live_demo为什么这么配实时合并使录完即可播放不用手动合片--live-record-limit 00:05:00让程序到点自行退出--live-wait-time 5与源站分片节奏匹配刷新太频繁会增加请求量太稀疏则可能漏分片。用密钥解密 CENC 加密的 MPD目标下载并解密一个 ClearKey 测试流。N_m3u8DL-RE https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p_ClearKey.mpd \ --key 9eb4050de44b4802932e27d75083e266:166634c675823c235a4a9446fad52e4d -M mp4为什么这么配密钥按KID:KEY顺序传入下载完成后程序自动调用解密引擎默认 mp4decrypt处理 CENC 载荷混流后得到的就是可直接播放的文件。密钥对不上的表现和解法见下一节。排障与避坑下载完成但视频播不了现象文件下载成功播放器报需要密钥或无法解码。原因KID 与 KEY 配对写反、写错或解密引擎不可用。解法核对密钥顺序是 KID 在前、KEY 在后多轨道不同 KID 时重复传--key或改用--key-text-file指向密钥文件引擎报错时换--decryption-engine FFMPEG。直播录制中断、文件无法播放现象录到一半卡住或输出文件尾部损坏。原因开了--live-pipe-mux且网络不稳管道数据丢失或分片重试次数不够。解法关掉管道混流改用普通实时合并同时把--download-retry-count调大。官方 README 明确提示网络不稳定时不要开启--live-pipe-mux该选项自 v0.1.5 提供v0.1.8 起可通过环境变量RE_LIVE_PIPE_OPTIONS调整混流时 ffmpeg 的选项。URL 解析失败、分片列表不对现象提示无法解析或拉到空的分片列表。原因站点要求特定请求头Referer、Cookie或分片 URL 需要继承父页面的查询参数。解法用-H Referer: 值逐条补请求头分片需要父 URL 参数时开启--append-url-params。较老版本的 Windows 自带终端可能无法运行本程序README 建议在 cmder 或较新终端中执行。下载前检查清单确认版本最新遇到问题先看新版本是否已修复再谈 bug音视频分离的流一律加-M mp4否则输出的是多个轨道文件加密流先核对KID:KEY配对单密钥流可直接只传 KEY只需要一部分内容时用--custom-range 05:00-20:00这类时间范围少下少等只下载你拥有合法权限获取的内容这是使用本工具的前提一条命令、一个链接N_m3u8DL-RE 把 M3U8/MPD/ISM 流变成你磁盘上的本地文件。【免费下载链接】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),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进