一种基于hls协议的视频片段缓存方法及系统的制作方法

文档序号:7824292阅读:185来源:国知局
一种基于hls协议的视频片段缓存方法及系统的制作方法
【专利摘要】本发明公开一种基于HLS协议的视频片段缓存方法及系统。所述方法包括:将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中;当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;当所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。采用本发明的方法或系统,可以利用服务器的内存进行实时视频流的传输,减少实时视频流传输过程中占用的存储资源,提高传输效率。
【专利说明】一种基于HLS协议的视频片段缓存方法及系统

【技术领域】
[0001]本发明涉及视频传输领域,特别是涉及一种基于HLS协议的视频片段缓存方法及系统。

【背景技术】
[0002]HLS (HTTP Living Streaming, HTTP实时流媒体)协议,是现有的视频点播技术中经常使用的协议。
[0003]HLS协议可以将视频文件切分成多个数据量较小的视频片段。这些片段可以存储在服务器的硬盘中。当客户端点播该视频文件时,客户端可以从服务器上获取该视频文件的一部分视频片段,然后在客户端就可以播放该部分视频片段,而不必将该视频文件全部下载完再播放。
[0004]发明人经过研宄发现,在实时视频流传输的过程中,也可以采用HLS协议。其中,实时视频流传输是指类似于电视台播放节目的方式,只是视频流的传输过程是通过网络完成的。由于进行实时视频流传输时,视频的实际时长事前无法确定,所以,需要准备容量很大的硬盘,才可以将实时视频流存储至服务器中进行传输。
[0005]尽管如此,当实时视频流的传输时间过长时,依然可能导致服务器的硬盘存储空间不足,进而导致传输出错。


【发明内容】

[0006]本发明的目的是提供一种基于HLS协议的视频片段缓存方法及系统,可以利用服务器的内存进行实时视频流的传输,减少实时视频流传输过程中占用的存储资源,提高传输效率。
[0007]为实现上述目的,本发明提供了如下方案:
[0008]一种基于HLS协议的视频片段缓存方法,包括:
[0009]获取外部设备传送至服务器的视频片段;
[0010]将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0011 ] 判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0012]当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0013]判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果;
[0014]当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0015]可选的,所述获取外部设备传送至服务器的视频片段之后,还包括:
[0016]确定所述视频片段的获取时间;
[0017]所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体包括:
[0018]为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0019]为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0020]将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0021]一种基于HLS协议的视频片段缓存方法,包括:
[0022]获取外部设备传送至服务器的视频片段;
[0023]将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0024]判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0025]当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0026]判断所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和是否大于第二预设数值,得到第二判断结果;
[0027]当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0028]可选的,所述获取外部设备传送至服务器的视频片段之后,还包括:
[0029]确定所述视频片段的获取时间;
[0030]所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体包括:
[0031]为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0032]为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0033]将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0034]一种基于HLS协议的视频片段缓存系统,包括:
[0035]视频片段获取单元,用于获取外部设备传送至服务器的视频片段;
[0036]视频片段存储单元,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0037]第一判断单元,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0038]视频片段标记单元,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0039]第二判断单元,用于判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果;
[0040]视频片段删除单元,用于当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0041]可选的,还包括:
[0042]获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间;
[0043]所述视频片段存储单元,具体包括:
[0044]时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0045]第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0046]存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0047]一种基于HLS协议的视频片段缓存系统,包括:
[0048]视频片段获取单元,用于获取外部设备传送至服务器的视频片段;
[0049]视频片段存储单元,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0050]第一判断单元,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0051]视频片段标记单元,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0052]第二判断单元,用于判断所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和是否大于第二预设数值,得到第二判断结果;
[0053]视频片段删除单元,用于当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0054]可选的,还包括:
[0055]获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间;
[0056]所述视频片段存储单元,具体包括:
[0057]时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0058]第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0059]存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0060]根据本发明提供的具体实施例,本发明公开了以下技术效果:
[0061]本发明实施例中的基于HLS协议的视频片段缓存方法及系统,通过将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,当所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除;一方面,可以利用服务器的内存进行实时视频流的传输,减少实时视频流传输过程中占用的存储资源,提高传输效率;另一方面,通过第二视频片段集合的设置,还可以使网络延时较高,或者需要继续播放较早时间段的视频片段的客户端也可以下载到需要播放的视频片段。

【专利附图】

【附图说明】
[0062]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0063]图1为本发明的基于HLS协议的视频片段缓存方法实施例的流程图;
[0064]图2为本发明的另一种基于HLS协议的视频片段缓存方法实施例的流程图;
[0065]图3为本发明的一种基于HLS协议的视频片段缓存系统实施例的结构图;
[0066]图4为本发明的另一种基于HLS协议的视频片段缓存系统实施例的结构图。

【具体实施方式】
[0067]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0068]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0069]图1为本发明的基于HLS协议的视频片段缓存方法实施例的流程图。
[0070]如图1所示,该方法可以包括:
[0071]步骤101:获取外部设备传送至服务器的视频片段;
[0072]对于实时播放的视频,需要先将视频数据转换成符合HLS协议的格式的视频片段才能进行传输。转换成视频片段后,可以传送至所述服务器。
[0073]步骤102:将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0074]所述服务器中具有容量较大的内存。
[0075]所述服务器接收到所述视频片段后,优先将所述视频片段存储至内存中。
[0076]存储至内存中的视频片段,至少被划分为两类。一类属于第一视频片段集合,另一类属于第二视频片段集合。
[0077]M3U8是一种可扩展的播放列表文件格式。它是一个包含UTF-8编码文字的m3u播放列表。m3u是包含媒体文件URL的一个事实上的播放列表标准。这种格式被用来作为HLS协议中的索引文件的格式。
[0078]当客户端与服务器首次连接时,客户端会从M3U8列表中的视频片段中确定一个视频片段作为起始片段。
[0079]步骤103:判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0080]所述第一预设数值可以根据实际需求进行设定。当所述服务器的内存容量较大时,可以将所述第一预设数值设置的较大,反之,则可以将所述第一预设数值设置的小一止匕
~、O
[0081]需要说明的是,将视频片段存储至服务器的内存中时,可以记录所述视频片段的生成时间或者存储时间。
[0082]步骤104:当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0083]所述第二视频片段集合中的视频片段,是用于向网络延时较高,或者需要继续播放较早时间段的视频片段的客户端提供视频片段的。上述客户端由于种种原因,需要播放的视频片段已经无法保留在M3U8列表中。因此,为了保证上述客户端可以下载到需要播放的视频片段,可以将超出M3U8播放列表的存储个数上限的视频片段作为第二视频片段集合中的视频片段,继续在内存中存储。
[0084]由于每次都是将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段,所以可以保证第一视频片段集合中的视频片段的生成时间都会晚于第二视频片段集合中的视频片段的生成时间。
[0085]步骤105:判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果;
[0086]所述第二预设数值也可以根据实际需要进行设定。通常,所述第一预设数值与所述第二预设数值需要满足以下关系:
[0087]每个视频片段的数据量*(所述第一预设数值+所述第二预设数值)<所述内存的最大可用存储容量。
[0088]步骤106:当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0089]当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,可以表示所述第二视频片段集合中的视频片段已经占用了较大的存储空间。此时,可以将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。这样,可以使得所述内存可以持续保持足够的可用存储空间。
[0090]综上所述,本实施例中,通过将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,当所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除;一方面,可以利用服务器的内存进行实时视频流的传输,减少实时视频流传输过程中占用的存储资源,提高传输效率;另一方面,通过第二视频片段集合的设置,还可以使网络延时较高,或者需要继续播放较早时间段的视频片段的客户端也可以下载到需要播放的视频片段。
[0091]需要说明的是,实际应用中,为了确保可以确定出各个视频片段的存储时间,所述获取外部设备传送至服务器的视频片段之后,还可以包括以下步骤:
[0092]确定所述视频片段的获取时间;
[0093]所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体可以包括:
[0094]为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0095]为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0096]将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0097]需要说明的是,生成所述时间标识以后,不仅仅是可以用于在所述第一视频片段集合中确定存储时间最长的视频片段,还可以用于在所述第一视频片段集合中确定存储时间最长的视频片段。
[0098]本发明还提供了另一种基于HLS协议的视频片段缓存方法。
[0099]图2为本发明的另一种基于HLS协议的视频片段缓存方法实施例的流程图。如图2所示,该方法可以包括:
[0100]步骤201:获取外部设备传送至服务器的视频片段;
[0101]步骤202:将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0102]步骤203:判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0103]步骤204:当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0104]步骤205:判断所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和是否大于第二预设数值,得到第二判断结果;
[0105]步骤206:当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0106]与图1中的方法的区别在于,本实施例中,当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,才将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0107]采用本实施例的方法,对于第二预设数值的设置,只需要参照内存的实际最大可用存储容量进行设置即可。所述第二预设数值与所述内存的最大可用存储容量之间的关系可以表示为:每个视频片段的数据量*所述第二预设数值<所述内存的最大可用存储容量。
[0108]实际应用中,所述获取外部设备传送至服务器的视频片段之后,还包括:
[0109]确定所述视频片段的获取时间;
[0110]所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体包括:
[0111]为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0112]为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0113]将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0114]还需要说明的是,本发明各个实施例中的基于HLS协议的视频片段缓存方法中,所述第二视频片段集合中的视频片段也是存储在所述服务器的内存中的。
[0115]“将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段”的这一步骤,具体实现方式可以是:
[0116]生成一个用于记录内存中存储的视频片段的个数等信息的日志文件;将M3U8播放列表中的存储时间最长的视频片段从M3U8播放列表中移除,并将该视频片段的信息记录在所述日志文件中。
[0117]后续可以根据所述日志文件对所述第二视频片段集合中的视频片段的数目进行统计。
[0118]本发明还提供了一种基于HLS协议的视频片段缓存系统。
[0119]图3为本发明的一种基于HLS协议的视频片段缓存系统实施例的结构图。如图3所示,该系统可以包括:
[0120]视频片段获取单元301,用于获取外部设备传送至服务器的视频片段;
[0121]视频片段存储单元302,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段;
[0122]第一判断单元303,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0123]视频片段标记单元304,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0124]第二判断单元305,用于判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果;
[0125]视频片段删除单元306,用于当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0126]本实施例中,通过将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,当所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除;一方面,可以利用服务器的内存进行实时视频流的传输,减少实时视频流传输过程中占用的存储资源,提高传输效率;另一方面,通过第二视频片段集合的设置,还可以使网络延时较高,或者需要继续播放较早时间段的视频片段的客户端也可以下载到需要播放的视频片段。
[0127]实际应用中,该系统还可以包括:
[0128]获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间;
[0129]所述视频片段存储单元302,具体可以包括:
[0130]时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0131]第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0132]存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0133]本发明还提供了另一种基于HLS协议的视频片段缓存系统。
[0134]图4为本发明的另一种基于HLS协议的视频片段缓存系统实施例的结构图。如图4所示,该系统可以包括:
[0135]视频片段获取单元401,用于获取外部设备传送至服务器的视频片段;
[0136]视频片段存储单元402,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M4U8播放列表中的视频片段;
[0137]第一判断单元403,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果;
[0138]视频片段标记单元404,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;
[0139]第二判断单元405,用于判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果;
[0140]视频片段删除单元406,用于当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
[0141]采用本实施例的系统,对于第二预设数值的设置,只需要参照内存的实际最大可用存储容量进行设置即可。所述第二预设数值与所述内存的最大可用存储容量之间的关系可以表示为:每个视频片段的数据量*所述第二预设数值<所述内存的最大可用存储容量。
[0142]实际应用中,该系统还可以包括:
[0143]获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间;
[0144]所述视频片段存储单元402,具体可以包括:
[0145]时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间;
[0146]第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段;
[0147]存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
[0148]本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0149]本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种基于HLS协议的视频片段缓存方法,其特征在于,包括: 获取外部设备传送至服务器的视频片段; 将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段; 判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果; 当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同; 判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果; 当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
2.根据权利要求1所述的方法,其特征在于,所述获取外部设备传送至服务器的视频片段之后,还包括: 确定所述视频片段的获取时间; 所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体包括: 为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间; 为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段; 将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
3.一种基于HLS协议的视频片段缓存方法,其特征在于,包括: 获取外部设备传送至服务器的视频片段; 将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段; 判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果; 当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同; 判断所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和是否大于第二预设数值,得到第二判断结果; 当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
4.根据权利要求3所述的方法,其特征在于,所述获取外部设备传送至服务器的视频片段之后,还包括: 确定所述视频片段的获取时间; 所述将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,具体包括: 为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间; 为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段; 将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
5.一种基于HLS协议的视频片段缓存系统,其特征在于,包括: 视频片段获取单元,用于获取外部设备传送至服务器的视频片段; 视频片段存储单元,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段; 第一判断单元,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果; 视频片段标记单元,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;第二判断单元,用于判断所述第二视频片段集合中的视频片段的数目是否大于第二预设数值,得到第二判断结果; 视频片段删除单元,用于当所述第二判断结果表示所述第二视频片段集合中的视频片段的数目大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
6.根据权利要求5所述的系统,其特征在于,还包括: 获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间; 所述视频片段存储单元,具体包括: 时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间; 第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段; 存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
7.一种基于HLS协议的视频片段缓存系统,其特征在于,包括: 视频片段获取单元,用于获取外部设备传送至服务器的视频片段; 视频片段存储单元,用于将所述视频片段作为第一视频片段集合中的视频片段存储至所述服务器的内存中,所述第一视频片段集合中的视频片段为M3U8播放列表中的视频片段; 第一判断单元,用于判断所述第一视频片段集合中的视频片段的数目是否大于第一预设数值,得到第一判断结果; 视频片段标记单元,用于当所述第一判断结果表示所述第一视频片段集合中的视频片段的数目大于第一预设数值时,将所述第一视频片段集合中存储时间最长的视频片段标记为第二视频片段集合中的视频片段;所述第二视频片段集合中的视频片段存储在所述内存中,且所述第二视频片段集合中的视频片段与所述第一视频片段集合中的视频片段不同;第二判断单元,用于判断所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和是否大于第二预设数值,得到第二判断结果; 视频片段删除单元,用于当所述第二判断结果表示所述第一视频片段集合中的视频片段的数目与所述第二视频片段集合中的视频片段的数目之和大于第二预设数值时,将所述第二视频片段集合中存储时间最长的视频片段从所述内存中删除。
8.根据权利要求7所述的系统,其特征在于,还包括: 获取时间确定单元,用于在获取外部设备传送至服务器的视频片段之后,确定所述视频片段的获取时间; 所述视频片段存储单元,具体包括: 时间标识生成子单元,用于为所述视频片段生成时间标识,所述时间标识用于标记所述获取时间; 第一集合标识生成子单元,用于为所述视频片段生成第一集合标识,所述第一集合标识用于标记所述视频片段为所述第一视频片段集合中的视频片段; 存储子单元,用于将所述视频片段、所述时间标识以及所述第一集合标识对应存储至所述内存中。
【文档编号】H04N21/231GK104486636SQ201410842024
【公开日】2015年4月1日 申请日期:2014年12月30日 优先权日:2014年12月30日
【发明者】樊永友, 赵鸿飞 申请人:中科创达软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1