Skip to content

【次元番】使用的M3u8视频下载器[kotlin],支持单任务多线程下载。支持基本的开始,暂停,下载列表功能。目前功能还不是很完善。后续将继续完善相关功能

fanchen001/M3u8Download

Repository files navigation

M3u8Download

一个简单的M3u8视频下载器[kotlin],支持单任务多线程下载。包含开始,暂停,删除,下载列表功能。

几个关键的类

M3u8Config,M3u8下载器配置,可以配置线程数,下载超时时间,下载路径等

M3u8File,对应M3u8索引文件,通过这个类可以将 m3u8 url 转换成 M3u8,以供下载

M3u8 一个M3u8代表一个完整的视频,也是M3u8Manager 用来管理的基本单位

M3u8Ts M3u8视频切片文件,下载的基本单位.多个ts合并成一个视频

OnM3u8DeleteListener 任务删除回掉接口

OnM3u8DownloadListenr 下载回掉接口

OnM3u8FileListener 查询db里所有下载任务的回掉接口

OnM3u8InfoListener 将m3u8 url 转换成M3u8实体类的回掉接口

使用姿势

M3u8Config.context = applicationContext // set context
M3u8Config.threadCount = 5 //  下载线程数
M3u8Config.m3u8Path = "" // 下载路径
//注册 M3u8File to M3u8 回掉
M3u8Manager.registerInfoListeners(object : OnM3u8InfoListener{
           
    override fun onSuccess(m3u8File: M3u8File, infos: List<M3u8>) {//转换成功
        M3u8Manager.download(infos)//将M3u8 添加到下载任务列表
    }

    override fun onError(m3u8File: M3u8File, e: Throwable) {//转换失败
    }

})
M3u8Manager.download(M3u8File(""))//开始 M3u8File to M3u8

以上是最简单的使用方式。具体其他使用方式,可以参考次元番

About

【次元番】使用的M3u8视频下载器[kotlin],支持单任务多线程下载。支持基本的开始,暂停,下载列表功能。目前功能还不是很完善。后续将继续完善相关功能

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages