【技术实现步骤摘要】
m3u8格式文件下载方法、播放方法及m3u8格式文件下载系统
[0001]本专利技术涉及互联网
,具体地涉及一种m3u8格式文件下载方法、一种m3u8格式文件播放方法及一种m3u8格式文件下载系统。
技术介绍
[0002]传统的MPEG2格式和MP4格式文件主要应用于存储的具有固定时长的节目,而随着直播行业兴起,无论是电视直播还是网络直播,这些格式文件均无法满足需求,因为若MPEG2格式和MP4格式文件中的某部分损坏,整个文件都无法解码了。m3u8基本实现原理为将一个大的媒体文件进行分片,将该分片文件资源路径记录于m3u8文件内,其中附带一些额外描述用于提供给客户端,客户端依据该m3u8文件即可获取对应的媒体资源,进行播放。正是基于该特性,m3u8可以从不同服务器下载不同的片段,可以更好的服务用户,且可以在缺少部分文件的情况下播放。所以m3u8在移动端的应用有着很大的价值。且因为是流媒体,播放的是一个个切片,所以比较适合直播。其在金融业和移动端中应用十分广泛。
[0003]但是,现在大多数对流媒体m3u8格式的 ...
【技术保护点】
【技术特征摘要】
1.一种m3u8格式文件下载方法,其特征在于,所述方法包括:获取m3u8格式文件的下载任务,所述m3u8格式文件包含一个头文件和多个切片文件;根据所述下载任务下载所述m3u8格式文件的头文件;对所述头文件进行解析,获取所述下载任务的文件信息;基于所述文件信息确定用于执行并行下载的下载服务器以及对应的并行下载方案;根据所述并行下载方案进行所述m3u8格式文件拆分,并将拆分后的m3u8格式文件分配给各下载服务器进行并行下载;确定各下载服务器均完成下载,对下载内容进行拼接以用于所述m3u8格式文件播放。2.根据权利要求1所述的方法,其特征在于,所述下载任务的文件信息,包括:所述m3u8格式文件的ts切片数量、各ts切片的序号和各ts切片的地址信息。3.根据权利要求2所述的方法,其特征在于,所述基于所述文件信息确定用于执行并行下载的下载服务器,包括:根据所述m3u8格式文件的任一ts切片的地址信息发起模拟下载请求至允许建立通讯连接的多个服务器,并回收来自各服务器的反馈信息;基于所述反馈信息确定各服务器的文件传输速度;根据预设的下载服务器数量,将文件传输速度最大的前预设数量个服务器作为下载服务器。4.根据权利要求3所述的方法,其特征在于,所述下载服务器包括:多个直接下载服务器和至少一个备用下载服务器;所述基于所述文件信息确定用于执行并行下载的下载服务器,还包括:根据预设的直接下载服务器数量,将文件传输速度最大的前预设数量个服务器作为直接下载服务器;根据预设的备用下载服务器数量,将剩余服务器中文件传输速度最大的前预设数量个服务器作为备用下载服务器。5.根据权利要求4所述的方法,其特征在于,基于所述文件信息确定对应的并行下载方案,包括:根据直接下载服务器的数量设置对应数量个下载切片集,将所述m3u8格式文件的所有ts切片平均分配到各下载切片集中;其中,未能平均分配的剩余切片被任意分配到某一下载切片集中;针对每一直接下载服务器生成对应下载切片集中的ts切片下载的下载方案。6.根据权利要求5所述的方法,其特征在于,根据所述并行下载方案进行所述m3u8格式文件拆分,包括:将各直接下载服务器对应的下载切片集内的ts切片的地址信息收录在下载队列中;其中,每一下载切片集的下载队列中ts切片的下载顺序与ts切片的序号排序相同。7.根据权利要求6所述的方法,其特征在于,所述将拆分后的m3u8格式文件分配给各下载服务器进行并行下载,包括:各直接下载服务器基于各自对应的下载队列进行文件同步下载;每一直接下载服务器在下载过程中,若某一ts切片下载错误:将下载错误的ts切片根据预设循环结构转录到下一直接下载服务器的下载队列中,在
当前下载队列中删除该下载错误的ts切片;其中,所述预设循环结构为上下直接下载服务器的对应规则;若确定存在转录自上一下载服务器的下载错误的ts切片,优先执行该转录的下载错误的ts切片的下载;若一下载错误的ts切片经过预设循环结构转存至初始的直接下载服务器时依旧未能被正确下载,则初始的直接下载服务器将该下载错误的ts切片转录到备用下载服务器中进行下载;若备用下载服务器尝试预设次数后依旧未能正确下载转录自直接下载服务器的下载错误的ts切片,则放弃下载该下载错误的ts切片。8.根据权利要求7所述的方法,其特征在于,所述方法还包括:构建所述预设循环结构,包括:按照文件传输速度从大到小的顺序对各直接下载服务器进行排序;将排序最末的直接下载服务器与排序最前的直接下载服务器相邻接,构成循环结构。9.根据权利要求7所述的方法,其特征在于,所述方法还包括:在一个拆分后的m3u8格式文件下载过程中,每放弃一个下载错误的ts切片,放弃计数一次;当放弃计数达到预设容错数量阈值时,判定该拆分后的m3u8格式文件下载失败,输出下载失败提示;其中,所述预设容错数量阈值根据该拆分后的m3u8格式文件的各ts切片的大小和用户需求调整。10.根据权利要求1所述的方法,其特征在于,在对下载内容进行拼接后,进行所述m3u8格式文件播放之前,所述方法还包括:若确定存在预设加密需求,对拼接后的m3u8格式文件的头文件或各切片文件进行加密;响应于播放请求指令,进行加密后的文件解密,并将解密文件转存到临时文件夹中,供后续进行m3u8格式文件播放;所述临时文件夹中的解密文件在所述m3u8格式文件播放之后被清除。11.一种m3u8格式文件的播放方法,其特征在于,所述m3u8格式文件根据权利要求1
‑
10中任一项权利要求所述m3u8格式文件下载方法下载,所述方法包括:获取用户的需求码率,并基于所述需求码率进行所述m3u8格式文件播放;若在所述m3u8格式文件播...
【专利技术属性】
技术研发人员:秦梓鑫,梁锐,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。