m3u8-down

1.5.1 • Public • Published

M3U8 视频并发下载, 并生成ffmpeg合并命令

start

npm run dev

开始使用

npm install -g m3u8-down

然后任意位置

m3u8 <url> p=6

url 必须要, p可选. p为并发下载文件数量

程序会自动解析m3u8文件并下载所有ts视频文件. 并生成一个sh脚本, 文件管理打开./temp/ ~ 下的一个.sh文件可自动合并视频, 依赖 ffmpeg

代码讲解

首先通过链家拆解获得地址携带的参数

const { origin, pathname } =  new URL(url)
const { originPath, fileName } = (url=>{
  const arr = url.split('/')
  return {
    "fileName": arr[arr.length - 1],
    "originPath": url.replace(arr[arr.length-1],'')
  }
})(pathname)

然后获取.m3u8文件, 对里面的内容进行分析

没行代码已#符号开头的代表一些协议注释, 过滤掉就是我们需要下载的视频断链接

const data = await $http.get(url)
const list = data.split('\n').filter(item=> !/^#\w+/.test(item) && item)

创建一个队列来下载任务, 通过Primise来控制下载文件, 成功一个任务就取下一个任务去下载

Readme

Keywords

Package Sidebar

Install

npm i m3u8-down

Weekly Downloads

0

Version

1.5.1

License

ISC

Unpacked Size

32.4 kB

Total Files

14

Last publish

Collaborators

  • qiatia