媒体数据的下载方法和装置的制造方法

文档序号:9870858阅读:260来源:国知局
媒体数据的下载方法和装置的制造方法
【技术领域】
[0001]本发明涉及互联网技术领域,特别是涉及媒体数据的下载方法和装置。
【背景技术】
[0002]随着互联网技术的飞速发展,网络视频以其丰富多彩的展现内容,极大的便利了人们的生活,并逐渐成为人们学习、社交以及休闲娱乐而不可替代的重要方式。尤其是随着智能移动终端的广泛普及,使人们可以方便的通过手机、PDA、平板电脑等各种终端设备上的浏览器访问各大视频网站,观看喜爱的视频资源。目前各大视频网站提供的视频多为基于HLS (HTTP Live Streaming)流媒体播放协议的m3u8格式。
[0003]HLS协议最大的特点是使用了流切割技术,将视频、音频等流媒体文件切割成多个TS片段(或称为TS碎片文件)分别进行存储,然后建立一个与所述多个TS片段相对应的m3u8描述文件,在该m3u8文件中对各TS片段的存储地址、片段时长、播放顺序等信息进行描述。客户端根据m3u8中描述的TS片段的存储地址进行串行或批量的并行渐进式下载,并根据所述片段时长及播放顺序进行播放。该设计使流媒体可以实现碎片化传输,有利于充分利用网络性能。
[0004]各大视频网站出于对视频版权或其他方面的考虑,经常会变更流媒体中的若干TS片段的存储地址,或者对流媒体重新切割、存储,这可能会使流媒体中的某些TS片段由于原下载地址失效而下载失败,导致流媒体无法正常播放。在下载失败时,客户端一般会重新尝试下载该流媒体。有时甚至需要重复下载多次才能将一个流媒体的全部的TS片段下载下来,下载成功率低,也降低了用户的观赏体验。

【发明内容】

[0005]本发明实施例提供了一种媒体数据的下载方法和装置,用于下载m3u8格式的流媒体数据,以解决现有技术中下载m3u8格式的流媒体时下载成功率低,影响用户观赏体验的问题。
[0006]为了解决上述技术问题,本发明实施例公开了如下技术方案:
[0007]—方面,本发明提供了媒体数据的下载方法,所述方法用于下载m3u8格式的流媒体数据,所述方法包括:
[0008]如果流媒体包含的第一数目的TS片段下载失败,则获取所述第一数目的TS片段的新下载地址信息,并根据所述新下载地址信息继续下载所述第一数目的TS片段;
[0009]在继续下载后,如果所述第一数目的TS片段中仍然有第二数目的TS片段下载失败,且所述第二数目的TS片段满足预设的放弃下载条件,则放弃下载所述第二数目的TS片段。
[0010]优选的,所述判断所述第二数目的TS片段是否满足预设的放弃下载条件包括:
[0011]如果所述第二数目的TS片段的片段数目小于第一预设数目,并且所述第二数目的TS片段的总时长小于第一预设时长。
[0012]优选的,所述方法还包括:
[0013]根据下载成功的TS片段的片段数目、对应时长及索引顺序建立所述流媒体的播放端m3u8描述文件;
[0014]根据所述播放端m3u8描述文件播放所述流媒体。
[0015]优选的,所述获取所述第一数目的TS片段的新下载地址信息包括:
[0016]获取所述流媒体的新下载地址信息;
[0017]根据所述新下载地址信息获取所述流媒体的新m3u8描述文件;
[0018]根据所述新m3u8描述文件获取所述第一数目的TS片段的新下载地址信息,根据所述第一数目的TS片段的新下载地址信息更换所述第一数目的TS片段的原下载地址信息。
[0019]优选的,所述获取所述流媒体的新下载地址信息包括:
[0020]在预设流媒体网站上获取与所述流媒体的有效信息相匹配的同一流媒体的地址信息,即为所述流媒体的新下载地址信息,所述有效信息包括所述流媒体的时长信息,和/或所述流媒体所在的网页地址信息,和/或所述流媒体的地址信息,和/或所述流媒体的名称。
[0021]优选的,所述根据所述新m3u8描述文件获取所述第一数目的TS片段的新下载地址信息包括:
[0022]如果所述新m3u8描述文件中包含的TS片段信息与所述流媒体的原m3u8描述文件中包含的对应TS片段信息属于同一 TS片段,则在所述新m3u8描述文件中获取第一数目的TS片段的新下载地址信息。
[0023]优选的,所述新m3u8描述文件中包含的TS片段信息与所述流媒体的原m3u8描述文件中包含的对应TS片段信息属于同一 TS片段包括:
[0024]所述新m3u8描述文件中包含的TS片段的片段数目与所述流媒体的原m3u8描述文件中包含的TS片段的片段数目相等,并且
[0025]所述新m3u8描述文件中包含的TS片段的时长与所述流媒体的原m3u8描述文件中包含的对应TS片段的时长相等。
[0026]另一方面,本发明提供了媒体数据的下载装置,所述装置用于下载m3u8格式的流媒体数据,所述装置包括:
[0027]获取单元,用于如果流媒体包含的第一数目的TS片段下载失败,则获取所述第一数目的TS片段的下载地址信息,并根据所述新下载地址信息继续下载所述第一数目的TS片段;
[0028]执行单元,用于在继续下载后,如果所述第一数目的TS片段中仍然有第二数目的TS片段下载失败,并且所述第二数目的TS片段满足预设的放弃下载条件,则放弃下载所述第二数目的TS片段。
[0029]优选的,所述执行单元包括:
[0030]第一确认子单元,用于如果所述第二数目的TS片段的片段数目小于第一预设数目,并且所述第二数目的TS片段的总时长小于第一预设时长,则确定所述第二数目的TS片段满足预设的放弃下载条件。
[0031]优选的,所述装置还包括:
[0032]建立单元,用于根据下载成功的TS片段的片段数目、对应时长及索引顺序建立所述流媒体的播放端m3u8描述文件;
[0033]播放单元,用于根据所述播放端m3u8描述文件播放所述流媒体。
[0034]优选的,所述获取单元包括:
[0035]第一获取子单元,用于获取所述流媒体的新下载地址信息;
[0036]第二获取子单元,用于根据所述新下载地址信息获取所述流媒体的新m3u8描述文件;
[0037]第三获取子单元,用于根据所述新m3u8描述文件获取所述第一数目的TS片段的新下载地址信息;
[0038]更换子单元,用于根据所述第一数目的TS片段的新下载地址信息更换所述第一数目的TS片段的原下载地址信息。
[0039]优选的,所述获取所述流媒体的新下载地址信息包括:
[0040]在预设流媒体网站上获取与所述流媒体的有效信息相匹配的同一流媒体的地址信息,即为所述流媒体的新下载地址信息,所述有效信息包括所述流媒体的时长信息,和/或所述流媒体所在的网页地址信息,和/或所述流媒体的地址信息,和/或所述流媒体的名称。
[0041]优选的,所述第三获取子单元包括:第二确认子单元,用于:
[0042]如果所述新m3u8描述文件中包含的TS片段的片段数目与所述流媒体的原m3u8描述文件中包含的TS片段的片段数目相等,并且
[0043]所述新m3u8描述文件中包含的TS片段的时长与所述流媒体的原m3u8描述文件中包含的对应TS片段的时长相等,则确认所述新m3u8描述文件中包含的TS片段信息与所述流媒体的原m3u8描述文件中包含的对应TS片段信息属于同一 TS片段。
[0044]上述媒体数据的下载方法及装置的技术方案,如果流媒体包含的第一数目的TS片段下载失败,则获取所述第一数目的TS片段的下载地址信息,并根据所述新下载地址信息继续下载所述第一数目的TS片段;如果所述
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1