拓冰建站拓冰建站
首页 / 资讯中心 / 正文

N_m3u8DL-RE 实用手册:4 个场景讲清 m3u8 下载、直播录制与加密流解密

N_m3u8DL-RE 实用手册4 个场景讲清 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-REHLS(m3u8)、DASH(mpd)、MSS(ism) 三种主流格式它都能解析并拉下来。它是个纯命令行工具丢给它链接它自己解析、选轨、下载、合并最后交给你一个能直接播放的完整文件。下文按真实使用场景写照着敲就行。⚡ 三步跑通第一次下载不管 Windows、macOS 还是 Linux路径都一样拿到可执行文件 → 确认 ffmpeg 可用 → 丢给它一个链接。区别只在可执行文件怎么来项目 Releases 页有预编译版本可直接下载坚持自己编译就按下面步骤走需要 .NET 10 SDK。注意两点ffmpeg 是硬依赖缺了它没法合并和解密先装好老 Windows 自带终端可能跑不了这个程序换 Windows Terminal 或 cmder 就行。克隆仓库、发布并验证环境是否就绪git clone https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE cd N_m3u8DL-RE dotnet publish src/N_m3u8DL-RE/N_m3u8DL-RE.csproj -c Release -o ./out ./out/N_m3u8DL-RE --version能打出版本号就说明装好了。第一次下载随便找个链接加上 --auto-select它自动选最高画质视频、每种语言的最佳音轨和全部字幕文件名从链接里推导别的都不用管N_m3u8DL-RE https://your-stream.example.com/video.m3u8 --auto-select运行中终端会显示进度表和每条轨道的状态结束后当前目录就有能播的文件。手头没有链接的话项目里的 TestStreams.md 有一组公开测试流先拿它们验证环境没问题。 按场景拆解核心用法下面是用得最多的 4 个场景按使用频率从高到低排每个给一条命令复制后换上自己的链接即可。另外记住一点每次任务解析完都会写出 meta.json想先看看这个链接到底有哪些轨道不用下载打开 json 看一眼就行。场景一存下一整集完整视频最常见的需求站点给了多档画质、多语言音轨和字幕你想全都带回家。对 m3u8 或 mpd 链接这条命令就够N_m3u8DL-RE https://your-stream.example.com/ep01.mpd \ -sv best \ # 选画质最好的视频轨 -sa langzh|en:forbest \ # 中、英音轨各取一条最佳 -ss all \ # 保留全部字幕轨 --save-name ep01 -M formatmp4 # 完成后自动把音视频混成一个 mp4不加分轨参数的话它会在终端里进入交互式选轨界面勾选想留的轨道链接有什么轨心里没数时这样最直观。只想要一部分内容也可以加--custom-range 05:00-20:00只下第 5 分钟到 20 分钟不用整条拉完。场景二直播录制不断流想录一场直播、几个小时不能断这正是 N_m3u8DL-RE 作为直播录制工具的拿手活它识别出直播流后会持续盯着播放列表新分片一出现就抓不用你守着屏幕N_m3u8DL-RE https://your-stream.example.com/live.m3u8 \ --live-real-time-merge \ # 录制时实时合并结束后直接输出完整文件 --live-record-limit 2:00:00 \ # 录满 2 小时自动停 --live-take-count 24 # 首次抓 24 个分片开场不丢不加 --live-record-limit 它会一直录到你按 CtrlC怕终端被误关建议永远给个时限。求轻量的话可以试--live-pipe-mux把分片实时管道给 ffmpeg 出 TS 文件但官方提醒过网络环境不稳时别开管道内数据读取由 ffmpeg 负责容易丢直播数据。场景三加密流解密HLS 的 AES-128、DASH 的 CENC 这类加密流没密钥就是放不出来。只要你能从网页网络请求或密钥接口里拿到 key加密流解密这步工具会替你调程序完成不用自己折腾 mp4decryptN_m3u8DL-RE https://your-stream.example.com/enc.m3u8 \ --key 0123456789abcdef0123456789abcdef:fedcba9876543210fedcba9876543210 \ # KID:KEY 格式 --decryption-engine FFMPEG \ # 机器上没有 mp4decrypt 时用 ffmpeg 解密 --auto-select所有轨道共用一把 key 时直接传 key 不带 KID 也行。拿不准用哪个 KID就打开解析后写出的 meta.json每条轨道的加密信息都写在里面。场景四一次丢一堆链接做批量下载工具一次处理一个链接但批量下载恰恰是 shell 的强项把要存的链接写进一个文件一行一个循环着跑# urls.txt待下载的 m3u8/mpd 链接一行一个 while read -r u; do N_m3u8DL-RE $u --auto-select --save-dir ./downloads done urls.txt上面是 bash 写法PowerShell 用户把外层换成 ForEach-Object 即可。这样每个链接独立起一个临时目录和任务某条翻车也不影响其他链接凌晨挂上跑完一整批。 什么时候该调参数先说结论大多数链接默认值就够用。遇到这三种症状再动参数。被服务器限流默认线程数是本机核心数跑满带宽时最猛。一旦成片 403 或分片反复重试大概率是服务端不高兴了 →--thread-count 4降到 4 线程还限流就降到 2。偶发丢分片每个分片默认重试 3 次公共 Wi-Fi 这种抖动网络下偶尔缺 1、2 片 →--download-retry-count 5加到 5 次。不想吃满带宽默认能下多快下多快办公室共享线路会连累全组想挂机下载又不影响工作 →-R 10M限速到 10Mbps-R也支持 Kbps 单位。三个参数合在一条命令里长这样N_m3u8DL-RE https://your-stream.example.com/video.m3u8 \ --thread-count 4 \ # 降到 4 线程治限流 --download-retry-count 5 \ # 分片失败重试 5 次治网络抖动 -R 10M # 限速 10Mbps不影响别人翻车了怎么办四个高频故障撞上了按序排查。启动就报找不到 ffmpeg→ 原因程序启动时会先检查 ffmpeg找不到直接罢工 → 装上 ffmpeg或指定路径--ffmpeg-binary-path /usr/local/bin/ffmpeg。分片下载时一片 403→ 原因站点校验 Referer 或 Cookie默认只带通用 UA → 命令里追加-H Referer: https://your-stream.example.com和-H Cookie: sessionidxxx重跑变绿就是它了。成品有杂音或花屏→ 原因加密流没传对 key或者音频轨选串了 → 打开临时目录里的 meta.json核对加密段里的 KID 和你传的--key是否一致。直播录制缺开场或有空隙→ 原因播放列表刷新太慢或首部分片抓得不够 →--live-wait-time 2把刷新间隔压到 2 秒--live-take-count 32让开头多抓一些。最后完整参数去哪查本文没讲到的参数先跑N_m3u8DL-RE --morehelp 参数名看单条详解全量参数表见 README。【免费下载链接】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),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门