N_m3u8DL-CLI是一款用于下载m3u8的命令行工具,基于.NET Framework 4.6框架开发,调用系统类库进行HTTP下载,支持常见的m3u8格式下载,支持从视频中选择一部分下载,还提供丰富的命令行选项以增强其功能。
关于开源
本项目已于2019年10月9日开源,采用MIT许可证,各取所需。
关于跨平台
N_m3u8DL-CLI (本项目): 基于 .NET Framework, 不具备跨平台能力. 目前已进入维护阶段.
N_m3u8DL-RE : 抛弃历史包袱从零做起, 支持Win/Linux/Mac, 更丰富的功能会在这里出现 ...
N_m3u8DL-CLI
一个简单易用的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代理, 如 http://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.
M3U8下载器下载:
m3u8DL-CLI开源地址:https://github.com/nilaoda/N_m3u8DL-CLI
依赖扩展下载:
FFmpeg开源地址:https://github.com/BtbN/FFmpeg-Builds