浏览器javascript 下载m3u8视频合成mp4
m3u8download.js
download m3u8 URL to mp4 下载m3u8视频合成一个完整的mp4
源码:https://github.com/ccjy88/m3u8download.js
功能
m3u8downloader是在chrome浏览器中运行的html和js,用于下载m3u8视频。
当视频链接比如是https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8
m3u8download可以自动分析m3u8文件,下载多个ts文件,视频是AES-128加密的,
m3u8downloader进行解密后存为ts文件。并生成ffmepg用于concat的文件,可以
用ffmpeg命令合成一个完整的mp4文件。
特征
- 输入m3u8 URL,下载分析m3u8。
- 下载m3u8中的嵌套的playlist,下载相关的m3u8 URL.
- 下载m3u8中的ts视频文件。
- 支持ts视频AES-128解密
- 生成ffmpeg命令需要的f.txt文件清单文件。
- 方便用ffmpeg命令将所有ts文件按f.txt的次序合成一个mp4文件。
- 提供python文件检查下载失败的ts,可在文件名callback中定义,只下载指定的缺失文件。
使用方法
将m3u8index.html和dist目录copy到nginx的html目录。
比如nginx安装在本地d:\nginx-1.80.0
运行deploy.cmd
copy m3u8*.html D:\nginx-1.18.0\html
xcopy /E /Y dist D:\nginx-1.18.0\html\dist
启动nginx,用chrome访问http://127.0.0.1/m3u8index.html, 在URL地址输入相关的m3u8地址。
比如搜到电影《极限逃生》,在Chrome浏览器中按F12,看Network中m3u8URL是
https://dbx5.tyswmp.com/20190910/oKHsD3EG/900kb/hls/index.m3u8,
把这个地址复制到m3u8index.html页面中,点击"下载"钮就可以。
chrome浏览器配置
下载目录设置:chrome://settings/downloads 比如为d:\downloads
自动下载设置: chrome://settings/content/automaticDownloads 必须允许http://127.0.0.1自动下载。
合成mp4的方法:
安装ffmepeg for windows
运行cmd。
cd d:\downloads
ffmpeg -f concat -i f.txt -c copy -y full.mp4
这样就把所有的ts文件生成一个完整的full.mp4。
错误处理
如果下载过程中f.txt文件中有而实际下载失败,可以运行python checktsfile.py
将缺失文件定义到m3u8index.html中的 check_list_cb函数中filelist,再下载一次缺失文件就可以。
编译方法:
cnpm install
cnpm run build
参数调整
m3u8index.html中options.maxthreadcount并行几个xhr同时下载ts文件。默认为5。
writetimeout为写入文件的定时器间隔,默认200毫秒。如果机器慢文件大这个值调大。
浏览器javascript 下载m3u8视频合成mp4相关推荐
- android 转码工具下载,m3u8视频转码工具
m3u8视频转码工具是一款非常好用的个m3u8视频工具可以帮助我们对视频进行很好的处理.M3u8视频合并软件支持各种短视频.Mp4文件,通过M3u8合并工具可以快速将这些视频合并在一起.软件操作简单, ...
- m3u8链接地址_FFmpeg下载m3u8视频
绪言 近日在上网课,便想尝试把网课回放扒下来备用,结果是不好下载的m3u8格式.网上看了很多关于m3u8下载的文章,大多比较麻烦,我今日试验出一种较为方便的方式,运用FFmpeg直接转码m3u8视频为 ...
- java下载m3u8视频,解密并合并ts(二)
上一篇 java下载m3u8视频,解密并合并ts(一)--m3u8概述 下一篇java下载m3u8视频,解密并合并ts(三)--代码实现 m3u8链接的获取 样例一:两个m3u8无key 首先在浏览器 ...
- nodejs使用fluent-ffmpeg下载m3u8视频
nodejs使用 fluent-ffmpeg下载m3u8视频 在使用fluent-ffmpeg之前,要确保电脑上已经安装了ffmpeg 安装包 fluent-ffmpeg npm install fl ...
- java下载m3u8视频,解密并合并ts(三)
上一篇 java下载m3u8视频,解密并合并ts(二)--获取m3u8链接 编写代码 加载jar包 由于java不支持AES/CBC/PKCS7Padding模式解密,所以我们要借助第一篇下载好的ja ...
- PHP下载m3u8视频及解析下载ts资源文件
上一篇写了PHP生成合并ts脚本,后来又想直接下载m3u8里面的ts,又码了一段. <?php /** PHP下载m3u8视频和及解析下载ts资源文件** @file m3u8download. ...
- 使用 ffmpeg 下载 m3u8 视频,linux 后台运行 ffmpeg
使用 ffmpeg 下载 m3u8 视频,linux 后台运行 ffmpeg 下载 m3u8 现在的视频大多数都是 m3u8 格式,网上的介绍也不少,那我直接记录一下下载的方法 方法 1 M3U8-D ...
- Java合并m3u8_m3u8Download java 下载 m3u8 视频,解密并合并 ts java download m3u8 vide @codeKK Android开源站...
java 下载 m3u8 视频,解密并合并 ts m3u8 链接获取方式以及代码分析请参见: https://blog.csdn.net/qq494257084/article/details/103 ...
- 下载m3u8视频及在Linux下将ts合并为mp4格式
背景 在爬取视频时偶尔会遇见m3u8格式的视频链接,视频下载后为多个ts文件,下面分享如何下载m3u8格式视频以及在Linux下将ts文件合成mp4 文件. m3u8格式链接解析 url = xxxx ...
- Fiddler 抓包下载 M3U8 视频
导航 工具准备 安装 Fiddler 下载视频 最近看了几个钉钉群直播,但只看一次的话很多知识来不及消化啊,所以想要下载直播回放视频到本地看. 可是钉钉群的管理员设置了不能下载直接回放视频,这就比较讨 ...
最新文章
- mysql隐藏用户名_系统默认的MySQL用户名消失的解决方法(修正版)
- 林华达视角-概率图模型与计算机视觉
- 定义一个 圆形 Circle类 , 定义其中的长度length属性,定义一个求面积getArea()的方法。 并编写一个测试类,进行长度的赋值和展示,并调用求面积方法展示面积值。
- 练习7.28、7.29、7.30
- 搜狐视频怎么开启青少年模式
- Magento教程 7:客制化网站
- 包子和饺子之扫地机器人_扫地机器人:行业发展放缓,市场暗藏潜力
- 教你轻松搞定javascript中的正则
- poj 1039 Pipe (判断 直线和 线段 是否相交 并 求交点)
- 电气工程学计算机,麻省理工学院电气工程与计算机科学专业解读
- win7和win8双系统的问题
- 贝塔斯曼龙宇:李斌能征善战 提前七年兑现了自己的承诺
- plsql 破解|oracle plsql 破解
- 目前见过最好的豆瓣电台第三方程序
- C++ 很难找工作了???
- 鸿蒙harmonyOS 方舟框架ARK使用ets的页面间转场动画的使用
- 局部动态地图(LDM)的介绍
- linux下为eclipse添加YaHei和Consolas混合字体
- MySQL中复制表的方式你知道几种
- 程序员提前下班的福音来了!GitHub、OpenAI 联手推出 AI 代码生成神器