最近一些年,m3u8格式开始活跃,在m3u8格式中,网络视频被分割为若干个ts格式的文件,所有文件依次下载到用户本地,进行播放组合,这种m3u8格式不仅避免了视频整体截获的风险,也加快了用户端观看的流畅速度。
但是,既然m3u8可以把视频分割为ts格式依次下载,那就一定有办法把ts格式解析后合并为mp4文件。
m3u8 downloader是一个简单易用的m3u8下载器,也是开源的命令行m3u8/HLS下载器,支持普通AES-128-CBC解密,多线程,自定义请求头等. 支持简体中文,繁体中文和英文.
官方更新
· 修复外挂字幕命名问题
· 修复外挂字幕识别问题
· 修复外挂轨道的一些逻辑问题
· 优化多语言识别逻辑
· 修复IV错误导致的AES-128解密异常问题
· 支持自定义IV(--useKeyIV)
软件特点
· 支持下载m3u8链接或文件为mp4或ts格式,并提供丰富的命令行选项
· 不支持优酷视频解密
· 支持AES-128-CBC加密自动解密
· 支持多线程下载
· 支持下载限速
· 支持断点续传
· 支持Master List
· 支持直播流录制(BETA)
· 支持自定义HTTP Headers
· 支持自动合并 (二进制合并或使用ffmpeg合并)
· 支持选择下载m3u8中的指定时间段/分片内容
· 支持下载路径为网络驱动器的情况
· 支持下载外挂字幕轨道、音频轨道
· 支持仅合并为音频
· 自动使用系统代理(可禁止)
· 提供SimpleG简易的GUI生成常用参数
命令行选项
N_m3u8DL-CLI.exe[OPTIONS]
--workDir Directory 设定程序工作目录
--saveName Filename 设定存储文件名(不包括后缀)
--baseUrl BaseUrl 设定Baseurl
--headers headers 设定请求头,格式 key:value 使用|分割不同的key&value
--maxThreads Thread 设定程序的最大线程数(默认为32)
--minThreads Thread 设定程序的最小线程数(默认为16)
--retryCount Count 设定程序的重试次数(默认为15)
--timeOut Sec 设定程序网络请求的超时时间(单位为秒,默认为10秒)
--muxSetJson File 使用外部json文件定义混流选项
--useKeyFile File 使用外部16字节文件定义AES-128解密KEY
--useKeyBase64 Base64String 使用Base64字符串定义AES-128解密KEY
--useKeyIV HEXString 使用HEX字符串定义AES-128解密IV
--downloadRange Range 仅下载视频的一部分分片或长度
--liveRecDur HH:MM:SS 直播录制时,达到此长度自动退出软件
--stopSpeed Number 当速度低于此值时,重试(单位为KB/s)
--maxSpeed Number 设置下载速度上限(单位为KB/s)
--enableDelAfterDone 开启下载后删除临时文件夹的功能
--enableMuxFastStart 开启混流mp4的FastStart特性
--enableBinaryMerge 开启二进制合并分片
--enableParseOnly 开启仅解析模式(程序只进行到meta.json)
--enableAudioOnly 合并时仅封装音频轨道
--disableDateInfo 关闭混流中的日期写入
--noMerge 禁用自动合并
--noProxy 不自动使用系统代理
--disableIntegrityCheck 不检测分片数量是否完整