███╗ ██╗ ███╗ ███╗██████╗ ██╗ ██╗ █████╗ ██████╗ ██╗ ██████╗██╗ ██╗
████╗ ██║ ████╗ ████║╚════██╗██║ ██║██╔══██╗██╔══██╗██║ ██╔════╝██║ ██║
██╔██╗ ██║ ██╔████╔██║ █████╔╝██║ ██║╚█████╔╝██║ ██║██║█████╗██║ ██║ ██║
██║╚██╗██║ ██║╚██╔╝██║ ╚═══██╗██║ ██║██╔══██╗██║ ██║██║╚════╝██║ ██║ ██║
██║ ╚████║███████╗██║ ╚═╝ ██║██████╔╝╚██████╔╝╚█████╔╝██████╔╝███████╗ ╚██████╗███████╗██║
╚═╝ ╚═══╝╚══════╝╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚════╝ ╚═════╝ ╚══════╝ ╚═════╝╚══════╝╚═╝
- 发行版: https://github.com/nilaoda/N_m3u8DL-CLI/releases
- 自动构建版
(供测试)
: https://github.com/nilaoda/N_m3u8DL-CLI/actions
本项目已于2019年10月9日开源,采用MIT许可证,各取所需。
-
N_m3u8DL-CLI
(本项目)
: 基于 .NET Framework, 不具备跨平台能力. 目前已进入维护阶段. -
N_m3u8DL-RE : 抛弃历史包袱从零做起, 支持Win/Linux/Mac, 更丰富的功能会在这里出现 ...
一个简单易用的m3u8下载器,下载地址:https://github.com/nilaoda/N_m3u8DL-CLI/releases
支持下载m3u8链接或文件为mp4
或ts
格式,并提供丰富的命令行选项。
- 不支持优酷视频解密
- 不支持气球云视频解密
- 支持
AES-128-CBC
加密自动解密 - 支持多线程下载
- 支持下载限速
- 支持断点续传
- 支持
Master List
- 支持直播流录制(
BETA
) - 支持自定义
HTTP Headers
- 支持自动合并 (二进制合并或使用ffmpeg合并)
- 支持选择下载
m3u8
中的指定时间段/分片内容 - 支持下载路径为网络驱动器的情况
- 支持下载外挂字幕轨道、音频轨道
- 支持仅合并为音频
- 支持设置特定http代理
- 支持自动使用系统代理(默认行为, 可禁止)
- 支持m3u8dl链接协议(通过web链接调用本机客户端)
- 提供SimpleG简易的
GUI
生成常用参数
N_m3u8DL-CLI
USAGE:
N_m3u8DL-CLI <URL|JSON|FILE> [OPTIONS]
OPTIONS:
--workDir 设定程序工作目录
--saveName 设定存储文件名(不包括后缀)
--baseUrl 设定Baseurl
--headers 设定请求头,格式 key:value 使用|分割不同的key&value
--maxThreads (Default: 32) 设定程序的最大线程数
--minThreads (Default: 16) 设定程序的最小线程数
--retryCount (Default: 15) 设定程序的重试次数
--timeOut (Default: 10) 设定程序网络请求的超时时间(单位为秒)
--muxSetJson 使用外部json文件定义混流选项
--useKeyFile 使用外部16字节文件定义AES-128解密KEY
--useKeyBase64 使用Base64字符串定义AES-128解密KEY
--useKeyIV 使用HEX字符串定义AES-128解密IV
--downloadRange 仅下载视频的一部分分片或长度
--liveRecDur 直播录制时,达到此长度自动退出软件(HH:MM:SS)
--stopSpeed 当速度低于此值时,重试(单位为KB/s)
--maxSpeed 设置下载速度上限(单位为KB/s)
--proxyAddress 设置HTTP/SOCKS5代理, 如 https://127.0.0.1:8080
--enableDelAfterDone 开启下载后删除临时文件夹的功能
--enableMuxFastStart 开启混流mp4的FastStart特性
--enableBinaryMerge 开启二进制合并分片
--enableParseOnly 开启仅解析模式(程序只进行到meta.json)
--enableAudioOnly 合并时仅封装音频轨道
--disableDateInfo 关闭混流中的日期写入
--disableIntegrityCheck 不检测分片数量是否完整
--noMerge 禁用自动合并
--noProxy 不自动使用系统代理
--registerUrlProtocol 注册m3u8dl链接协议
--unregisterUrlProtocol 取消注册m3u8dl链接协议
--enableChaCha20 enableChaCha20
--chaCha20KeyBase64 ChaCha20KeyBase64
--chaCha20NonceBase64 ChaCha20NonceBase64
--help Display this help screen.
--version Display version information.
新增命令行参数:
--registerUrlProtocol 注册m3u8dl链接协议
--unregisterUrlProtocol 取消注册m3u8dl链接协议
URI格式:
m3u8dl:https://<base64编码的客户端命令行文本>
URI示例:
m3u8dl:https://Imh0dHBzOi8vZXhhbXBsZS5jb20vYWJjLm0zdTgiIC0td29ya0RpciAiJVVTRVJQUk9GSUxFJVxEb3dubG9hZHNcbTN1OGRsIiAtLXNhdmVOYW1lICJhYmMiIC0tZW5hYmxlRGVsQWZ0ZXJEb25lIC0tZGlzYWJsZURhdGVJbmZvIC0tbm9Qcm94eQ==
URI解码结果:
"https://example.com/abc.m3u8" --workDir "%USERPROFILE%\Downloads\m3u8dl" --saveName "abc" --enableDelAfterDone --disableDateInfo --noProxy