N_m3u8DL-RE 免费流媒体下载工具:10 分钟跑通 m3u8 与 DASH 下载
【免费下载链接】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 是一款免费的跨平台流媒体下载工具,专门处理 m3u8、MPD(DASH)和 ISM(MSS)三种协议,点播和直播都能下。本文覆盖安装和常用参数,走完一次下载流程。一个终端加一条链接就够。
⚡ 30 秒快速上手
N_m3u8DL-RE 基于 .NET 构建,Windows、Linux、macOS 都能跑。Arch 用户一行命令装好稳定版;其他系统 clone 源码后编译即可。装完先跑这条最基础的命令:
# 安装(Arch Linux 示例) yay -Syu n-m3u8dl-re-bin # 基础用法:传入链接即可 N_m3u8DL-RE "https://example.com/video.m3u8"程序自动识别协议并选最佳轨道,下完自动合并。看到最终视频文件,就说明跑通了。
📋 核心能力一览
先混个脸熟,下表是最常用的 6 项能力。后面查参数时直接对照第三列。
| 能力 | 一句话说明 | 对应关键参数或路径 |
|---|---|---|
| 点播下载 | 分片并行下载后自动合并 | --thread-count、--skip-merge |
| 直播录制 | 边录边合并,可限时停止 | --live-real-time-merge、--live-record-limit |
| 轨道选择 | 用正则筛选音视频与字幕 | -sv、-sa、-ss |
| 加密解密 | 内置 AES 与 ChaCha20,可换解密引擎 | --key、src/N_m3u8DL-RE/Crypto/ |
| 音视频混流 | 分离轨道合成 mp4 或 mkv | -M format=mp4 |
| 命名模板 | 文件名带分辨率、带宽等变量 | --save-pattern |
每一项都有现成参数,不碰源码也能用全。
🎯 按场景查参数
下载指定画质的视频
想固定拿 1080p 而不是默认最佳,用-sv按分辨率正则筛选:
N_m3u8DL-RE "https://example.com/course.mpd" \ -sv "res=*1080:for=best" \ # 选 1080 分辨率中最佳 -sa "lang=zh:for=best" \ # 选中文音轨 --save-name "课程_1080p" # 指定保存文件名跑完得到 1080p 视频和对应音轨,想合成一个文件时再加-M format=mp4。
直播实时录制
直播走录制管理器,和点播不是一条路径。边录边合并、限时半小时:
N_m3u8DL-RE "https://live.example.com/stream.m3u8" \ --live-real-time-merge \ # 边录边合并 --live-record-limit 00:30:00 \ # 录满 30 分钟自动停 --save-name "直播录制"直播结束或到时自动收尾,产出完整文件而不是一堆分片。
处理加密流
拿到密钥后交给--key,程序调用 mp4decrypt 等工具解密:
N_m3u8DL-RE "https://example.com/encrypted.m3u8" \ --key "KID:KEY" \ # KID 与 KEY 用冒号分隔 --decryption-engine MP4DECRYPT # 解密引擎,默认就是它解密发生在每个分片下载之后,后续合并流程照旧。
批量任务
多个链接写进数组,循环调用就能批量下:
# URLS 为你的链接数组 for u in "${URLS[@]}"; do N_m3u8DL-RE "$u" --save-dir ~/Videos done再配--save-pattern "<SaveName>_<Resolution>",不同清晰度的文件不会互相覆盖。
🔧 调优与排错
调优
- 线程:
--thread-count默认取本机 CPU 线程数,高带宽机器可以翻倍 - 代理:
--custom-proxy http://127.0.0.1:8888指定代理地址 - 只下片段:
--custom-range 05:00-20:00仅下第 5 到 20 分钟,省时省空间
排错
- 症状:终端颜色错乱、出现转义字符。原因:终端不支持 ANSI。解决:加
--no-ansi-color重新运行 - 症状:部分分片反复下载失败。原因:网络不稳或超时太短。解决:加
--download-retry-count 5 --http-request-timeout 180 - 症状:合并后的视频无法播放。原因:合并方式与该流不匹配。解决:改用
--binary-merge,或加--use-ffmpeg-concat-demuxer
🧭 架构与进阶
想改行为或排疑难时,先知道模块在哪:
src/N_m3u8DL-RE.Parser/— 三种协议解析与分片拆分src/N_m3u8DL-RE/Downloader/— 分片下载与分片解密src/N_m3u8DL-RE/DownloadManager/— 下载与直播录制调度src/N_m3u8DL-RE/Crypto/— AES、ChaCha20 解密实现src/N_m3u8DL-RE/CommandLine/— 命令行参数解析
进阶建议:跑一遍src/N_m3u8DL-RE.Tests/里的测试用例,再用--morehelp命令查看单个参数的详细帮助。
一条链接进、一个视频出,这是 N_m3u8DL-RE 最核心的使用体验。下一步去运行N_m3u8DL-RE --help,把没覆盖到的参数过一遍,挑两三个存进自己的备忘。
【免费下载链接】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),仅供参考