m3u8Downloader是用来下载m3u8视频的, 轻轻松松跑满全部带宽来进行下载~
相比m3u8Download:
在开始下载TS之前, 我们需要将M3U8文件下载到本地, 然后再去下载TS流, 这是两个步骤. 你可以自己手动下载好m3u8文件, 也可以使用软件自带的m3u8下载器来下载m3u8文件. 注意, 自己下载的m3u8文件务必确保m3u8文件中的资源链接是绝对地址.
m3u8文件下载, 会自动转换m3u8数据中的相对路径为绝对路径.
Usage:
m3u8Downloader m3u8 {m3u8URL地址} [flags]Flags:
-h, --help help for m3u8
-o, --output string 输出的文件名(Default: 链接尾部的名称)
# Example
# 这将下载链接中的数据到"周处除三害.m3u8"
.\m3u8Downloader.exe m3u8 https://example.com/100.m3u8 -o "周处除三害"
将m3u8中的所有媒体流全部下载到本地后合并成视频
Usage:
m3u8Downloader {m3u8文件} [flags]Flags:
--config string config file (default is currentDirectory/config.yaml)
-h, --help help for m3u8Downloader
# Example
# 使用之前, 确保你已经在配置文件中配置好了ffmpeg路径, 如果没有, 将不会自动把下载好的媒体转为mp4.
# 这将下载"周处除三害.m3u8"中的媒体到当前目录下的media文件夹
# 全部媒体下载完后会自动合并成一个, 最后会调用ffmpeg将合并的媒体流转为mp4存储到mp4文件夹.
.\m3u8Downloader.exe "周处除三害.m3u8"
在当前目录下创建一个config.yaml
文件, 配置以下内容.
# concurrency 下载并发数量(默认为CPU核心数量)
# concurrency: 8
# streamMinKB 媒体的最小KB值, 用于过滤不完整/损坏的媒体流, 如果没有过滤可能导致生成的最终话音不一致.(默认不限制)
streamMinKB: 80
# proxy 下载时使用的代理, 这里请直接使用URL的格式, 也可以带上用户名和密码: http://user:pass@localhost:10809 (默认不使用代理)
proxy: http://localhost:10809
# referer 下载媒体流时, header添加的referer值.
#referer: https://example.com/
# refererConfig 下载媒体流时, header添加的referer值, 该配置可以动态的选择主域名相匹配的referer. 如果上面的referer配置已有的话, 该选项refererConfig无效.
#refererConfig:
# example.com: "https://video.example.com/"
# 出错重试次数, 如果设置为3, 其总计下载次数为3. (默认0/1下载失败后不进行重试)
retry: 3
# 允许出错次数, 当有指定的媒体数量都下载出错时, 则认为该m3u8文件可能失效了, 终止下载, 设置该值时, 你需要能够接收部分媒体的丢失, 通常不会很多甚至不会丢失媒体资源. (默认0/1只要出错一个就直接终止)
allowError: 60
# ffmpeg文件路径, 将下载完成并合成后的媒体转换为mp4.(默认不进行转换)
#ffmpeg: C:\ffmpeg\ffmpeg.exe
# downloadTimeoutSecond 下载超时, 单位秒, 可以防止下载某个资源过久, 当下载过久直接判定为出错, 交给retry或allowError策略进行重新下载.(默认不限制, 一直等待到文件下载完成)
downloadTimeoutSecond: 50
当你成功下载到MP4视频之后, 你会发现media目录下面的文件是多余的, 可以清理掉, 但是有时候手动清理太多视频比较麻烦, 因为你有可能需要一个个对比看看media中的文件夹中哪个是已经下载成功有MP4文件了, 可以借助这个命令来快速安全的删除.
.\m3u8Downloader.exe clean
执行命令后, 程序会扫描mp4
文件夹下面下载成功的视频, 将扫描到的视频文件名对应的在media
文件夹中进行匹配, 如果匹配到了, 程序会自动删除那些没用的媒体文件. 该命令只会删除media
文件夹下的文件, 不会删除其他目录的文件, 可以放心大胆的执行!
在使用过程中遇到问题, 欢迎随时提问我, 你可以在Issues中留下你的问题或建议.
如果你有能力解决本仓库的BUG, 欢迎你在Pull Request中提交你的改进.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。