视频内容下载方法、装置、设备及存储介质

文档序号:1925629 发布日期:2021-12-03 浏览:16次 >En<

阅读说明:本技术 视频内容下载方法、装置、设备及存储介质 (Video content downloading method, device, equipment and storage medium ) 是由 何益超 于 2021-08-23 设计创作,主要内容包括:本发明实施例提供了一种视频内容下载方法、装置、设备及存储介质,该方法包括:在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录;基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合;基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容;生成目标下载列表,目标下载列表中包括的下载地址来自预测出的至少一个视频内容的下载地址;将目标下载列表发送给终端,以使终端基于目标下载列表进行预下载。如此,降低了网络带宽的峰值,降低了运营成本。(The embodiment of the invention provides a method, a device, equipment and a storage medium for downloading video content, wherein the method comprises the following steps: in a preset off-peak period, taking a historical record of video content watched by a user in the latest time period as a target historical record; determining at least one target episode which is watched by a user most recently based on the target historical record, and obtaining a first candidate set based on unviewed video content included in the at least one target episode; predicting at least one video content watched by the user for a next peak period based on the first candidate set; generating a target download list, wherein the download address included in the target download list is from the predicted download address of at least one video content; and sending the target download list to the terminal so that the terminal carries out pre-download based on the target download list. Therefore, the peak value of the network bandwidth is reduced, and the operation cost is reduced.)

视频内容下载方法、装置、设备及存储介质

技术领域

本发明涉及互联网技术领域,特别是涉及一种视频内容下载方法、装置、设备及存储介质。

背景技术

目前,在通信行业,OTT业务发展迅速。OTT是“Over The Top”的缩写,来源于篮球等体育运动中的“过顶传球”之意,而在通信行业,OTT是指通过互联网向用户提供各种应用服务,这种应用和目前网络运营商所提供的通信业务不同,它仅利用网络运营商的网络,而服务由网络运营商之外的第三方提供。互联网电视(TV,Television)是一种典型的OTT业务,可以是基于互联网的视频服务。

由于OTT业务需要依赖网络运营商的网络带宽,因此,需要向网络运营商支付使用网络带宽的费用。网络带宽的计费方式大多是通过网络带宽的峰值计费,举例来说,在21:00时,用户观看视频总共消耗的网络带宽达到了一天的最高值(即峰值)1TBPS,而统计一天的用户消耗的平均网络带宽为0.5TBPS,则最终的网络带宽的计费标准要按照一天使用的最高值1TBPS来计费。随着基于OTT业务的发展迅速,TV终端的用户量持续增加,消耗的网络带宽随之增加,也即一天中消耗的网络带宽的峰值随之增加,随之而来的是实现OTT业务的运营成本的增加。

发明内容

本发明实施例的目的在于提供一种视频内容下载方法、装置、设备及存储介质,以实网络带宽的峰值的降低,从而降低运营成本。具体技术方案如下:

在本发明实施的第一方面,首先提供了一种视频内容下载方法,应用于服务器,包括:

在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录;

基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合;

基于所述第一候选集合,为下一个高峰时段预测出所述用户观看的至少一个视频内容;

生成目标下载列表,所述目标下载列表中包括的下载地址来自所述预测出的至少一个视频内容的下载地址;

将所述目标下载列表发送给终端,以使所述终端基于所述目标下载列表进行预下载。

在一种实施方式中,所述基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,包括:

基于所述目标历史记录,确定所述用户最新观看的至少一个历史视频内容的信息,每个所述历史视频内容的信息属于不同的剧集;

基于所述历史视频内容的信息,确定所述历史视频内容所属的目标剧集,获取所述目标剧集所包括的各视频内容的播放顺序表;

在所述历史视频内容不是所述播放顺序表的最后一个的情况下,基于所述播放顺序表中,播放顺序在所述历史视频内容之后的视频内容,得到第二候选集合;

基于所述第二候选集合,得到所述第一候选集合。

在一种实施方式中,所述基于所述第一候选集合,为下一个高峰时段预测出所述用户观看的至少一个视频内容,包括:

选取所述第一候选集合中播放顺序靠前的视频内容,得到所述预测出的至少一个视频内容。

在一种实施方式中,所述基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,包括:

在历史记录有更新的情况下,基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合。

在一种实施方式中,在所述生成目标下载列表之前,还包括:

获取预设时间内已发送的历史下载列表对应的视频内容所占用的存储空间大小之和,作为统计值;

判断所述统计值是否超过第二预设值;

所述生成目标下载列表,包括:

在所述统计值未超过所述第二预设值的情况下,生成所述目标下载列表。

在一种实施方式中,所述生成目标下载列表,包括:

从候选下载列表中选取全部数量或者部分数量的下载地址,以得到目标下载列表,所述候选下载列表中包括所述预测出的至少一个视频内容的下载地址。

在一种实施方式中,所述生成目标下载列表,包括:

在所述终端在所述预设非高峰时段内的周期性预下载请求的触发下,从所述候选下载列表未经历史周期选取的下载地址中,选取当前周期对应的数量的下载地址,得到目标下载列表。

在本发明实施的第二方面,还提供了一种视频内容下载方法,应用于终端,包括:

在预设非高峰时段内,接收服务器发送的目标下载列表,所述目标下载列表中包括的下载地址来自为下一个高峰时段预测出的用户观看的至少一个视频内容的下载地址,所述预测出的至少一个视频内容的下载地址是通过如下方式得到的:在所述预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录,基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,基于所述第一候选集合,为下一个高峰时段预测出所述用户观看的至少一个视频内容;

基于所述目标下载列表进行预下载。

在一种实施方式中,还包括:

在所述预设非高峰时段内,向所述服务器发送周期性预下载请求;

所述接收服务器发送的目标下载列表,包括:

响应于当前周期发送的预下载请求,接收服务器发送的目标下载列表,所述目标下载列表是从候选下载列表未经历史周期选取的下载地址中选取得到的,所述候选下载列表中包括所述预测出的至少一个视频内容的下载地址。

在本发明实施的第三方面,还提供了一种视频内容下载装置,应用于服务器,包括:

历史确定模块,用于在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录;

剧集确定模块,用于基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合;

视频预测模块,用于基于所述第一候选集合,为下一个高峰时段预测出所述用户观看的至少一个视频内容;

列表生成模块,用于生成目标下载列表,所述目标下载列表中包括的下载地址来自所述预测出的至少一个视频内容的下载地址;

列表发送模块,用于将所述目标下载列表发送给终端,以使所述终端基于所述目标下载列表进行预下载。

在本发明实施的第四方面,还提供了一种视频内容下载装置,应用于终端,包括:

列表接收模块,用于在预设非高峰时段内,接收服务器发送的目标下载列表,所述目标下载列表中包括的下载地址来自为下一个高峰时段预测出的用户观看的至少一个视频内容的下载地址,所述预测出的至少一个视频内容的下载地址是通过如下方式得到的:在所述预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录,基于所述目标历史记录,确定所述用户最新观看的至少一个目标剧集,以及基于所述至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,基于所述第一候选集合,为下一个高峰时段预测出所述用户观看的至少一个视频内容;

视频下载模块,用于基于所述目标下载列表进行预下载。

在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一所述的视频内容下载方法步骤。

在本发明实施的又一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任一所述的方法。

在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的视频内容下载方法。

本发明实施例提供视频内容下载方法、装置、设备及存储介质,在预设非高峰时段内,以用户最新时间段内观看视频内容的历史记录为目标历史记录,基于此,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,利用该第一候选集合,为下一个高峰时段预测出可能观看的视频内容,并生成了目标下载列表并发送给了终端,该目标下载列表中的下载地址即预测出的视频内容的下载地址,由终端基于该目标下载列表对预测出的视频内容进行预下载,如此,当终端的用户在下一个高峰时段想要观看该预测出的视频内容时,就可以直接调用已利用非高峰时段的免费网络带宽提前下载好的预测出的视频内容,以满足观看需求,无需再消耗高峰时段的网络带宽去下载了,在一定程度上降低了高峰时段整体网络带宽的使用,从而降低了网络带宽的峰值,降低了运营成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例中的一种系统架构图。

图2为本发明实施例中的一种视频内容下载方法的流程图。

图3为本发明实施例中的一种视频内容下载方法的流程图。

图4为本发明实施例中的一种视频内容下载方法的流程图。

图5为本发明实施例中的一种视频内容下载方法的场景示意图。

图6为本发明实施例中的一种视频内容下载装置的结构示意图。

图7为本发明实施例中的一种视频内容下载装置的结构示意图。

图8为本发明实施例中的用来实现视频内容下载方法的电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

图1为本发明实施例中的一种系统架构图。如图1所示,该系统架构包括通过网络运营商提供的网络通信连接的服务器和多个终端。这里的终端可以但不限于为TV终端。基于此,服务器可以为多个终端的用户提供视频服务,即实现OTT业务。OTT业务需要依赖网络运营商的网络带宽,且基于一天中使用的网络带宽的峰值来支付费用,高峰时段的网络带宽的峰值越高,运营成本越高。本发明实施例提供了一种视频内容下载方法,以降低高峰时段的网络带宽的峰值,从而降低运营成本。下面分别对服务器侧和终端侧的视频内容下载方法进行说明。

图2为本发明实施例中的一种视频内容下载方法的流程图。如图2所示,本实施例提供的一种视频内容下载方法,应用于服务器,该方法至少包括如下步骤:

步骤201、在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录。

步骤202、基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合。

步骤203、基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容。

步骤204、生成目标下载列表,目标下载列表中包括的下载地址来自预测出的至少一个视频内容的下载地址。

步骤205、将目标下载列表发送给终端,以使终端基于目标下载列表进行预下载。

实际应用中,在一天的中午和晚上观看视频内容的用户一般会比较多,消耗的网络带宽也会比较多,出现午高峰时段(例如12:00-14:00)和晚高峰时段(例如20:00-21:00),尤其是晚高峰时段,大多数用户都集中在这个时段观看视频内容,一天中的网络带宽的峰值多出现在晚高峰时段。而一天的凌晨和下午观看视频内容的用户就比较少,消耗的网络带宽也比较少,是非高峰时段。因此,预设非高峰时段可以为凌晨时段,例如00:00-06:00,也可以为下午时段,例如14:00-18:00。预设非高峰时段消耗的网络带宽的峰值小于高峰时段消耗的网络带宽的峰值。一天中,预设非高峰时段的数量可以为一个,也可以为多个。下一个高峰时段可以是距离当前预设非高峰时段最近的一个未来的高峰时段。

最新时间段是指与用户最后观看时刻最近的一个时间段。该时间段的时长可以根据实际情况进行设置。例如,可以将用户最后观看时刻作为最新时间段。例如,用户最后观看时刻为2020-12-01 21:30,可以仅将该最后观看时刻的历史记录,作为目标历史记录。也可以根据实际情况,适当延长最新时间段的时长。最新时间段的历史记录能够反映用户当前感兴趣的视频内容,将最新时间段的史记录作为目标历史记录,对用户下一个高峰时间段可能观看的视频内容进行预测,得到的预测结果更加准确,也就是说,预测出的视频内容就有更高的概率真正被用户观看,如果用户在高峰时段观看该预测出的视频内容,进一步降低了高峰时段整体网络带宽的使用。

实际应用中,剧集一般包括多集视频内容,每集视频内容可以包括多个视频内容的片段。具体的,剧集可以为连续剧,也可以为包括多期的综艺节目等长视频,该剧集类的视频内容较多,用户需要用较长的时间分多次才能将整部剧集观看完,这次没有看完的情况下,下次很有可能还会接着看。因此,可以对最新观看的剧集类的视频内容进行预测,基于目标剧集中未观看的视频内容,预测下一个高峰时段观看的视频内容,终端对该部分视频内容进行预下载后,有更高的概率真正被用户观看,如果用户在高峰时段观看该视频内容,进一步降低了高峰时段整体网络带宽的使用。

目标剧集可以是一个,也可以是多个,只要能够满足为下一个高峰时段预测观看的视频内容的需求数量即可。如果最后观看的目标剧集未观看的视频内容较多,能够满足预测出的视频内容的需求数量,那么,只确定一个最后观看的目标剧集即可。如果最后观看的目标剧集即将完结,不能满足预测出的视频内容的需求数量,则需要再确定该最后观看的目标剧集上一个观看的目标剧集。以此类推,最终得到需要的视频内容。

目标下载列表是当前要发送给终端的下载列表。该目标下载列表所包括的下载地址的数量,可以根据实际情况设置,只要使得终端预下载时,整体的网络带宽的峰值不超过高峰时段的峰值即可。

本方案中,在预设非高峰时段内,以用户最新时间段内观看视频内容的历史记录为目标历史记录,基于此,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,利用该第一候选集合,为下一个高峰时段预测出可能观看的视频内容,并生成了目标下载列表并发送给了终端,该目标下载列表中的下载地址即预测出的视频内容的下载地址,由终端基于该目标下载列表对预测出的视频内容进行预下载,如此,当终端的用户在下一个高峰时段想要观看该预测出的视频内容时,就可以直接调用已利用非高峰时段的免费网络带宽提前下载好的预测出的视频内容,以满足观看需求,无需再消耗高峰时段的网络带宽去下载了,在一定程度上降低了高峰时段整体网络带宽的使用,从而降低了网络带宽的峰值,降低了运营成本。

步骤204中,生成目标下载列表时,可以是服务器在预设非高峰时段内,确定启动的终端,直接生成目标下载列表。也可以是在终端的预下载请求的触发下,生成目标下载列表。

实际应用中,目标下载列表需要在终端启动的情况下发送,以保证终端能够成功接收到该目标下载列表。并且,TV终端等固定终端不同于手机等移动终端,在用户不观看的情况下,都是关闭的,无法接收该目标下载列表。

如果是由服务器直接生成目标下载列表,需要服务器确定终端的状态。如果是通过终端发送的预下载请求触发服务器生成目标下载列表,由于终端能够发送预下载请求,说明终端是启动的,则无需服务器再去确定终端的状态,实现则更简单。

需要说明的是,为了不影响用户观看视频内容,可以在终端的用户未观看视频内容的情况下,生成并发送目标下载列表。

在一种实施方式中,生成目标下载列表,其具体实现方式可以包括:从候选下载列表中选取全部数量或者部分数量的下载地址,以得到目标下载列表,所述候选下载列表中包括所述预测出的至少一个视频内容的下载地址。

实际应用中,可以预先生成候选下载列表,该候选下载列表所包括的下载地址的数量大于或者等于目标下载列表所包括的下载地址的数量,以满足目标下载列表的选取需求。如此,当需要生成目标下载列表时,直接从候选下载列表中选取需要的下载地址,可以快速得到目标下载列表,从而提高了处理效率。

另外,候选下载列表对应的预测出的至少一个视频内容所占用的存储空间大小之和,不低于第一预设值。该第一预设值的具体值可以根据实际需要进行设置。例如,可以基于终端当前可用的存储空间大小确定第一预设值。这里,终端当前可用的存储空间大小是指终端当前可以用来存储预测出的视频内容的存储空间大小。服务器可以从终端获取终端的存储空间信息,基于该存储空间信息得到终端当前可用的存储空间大小。例如,可以在预下载请求中携带终端的存储空间信息,该终端的存储空间信息包括终端当前可用的存储空间大小。第一预设值可以为预设倍数与终端当前可用的存储空间大小的乘积。该预设倍数大于1。举例来说,终端当前可用的存储空间大小为2G,该预设倍数可以为1.5倍,第一预设值为3G。如此,可以使得候选下载列表提供的视频内容足够多,有一定的冗余,以满足终端的预下载需求。预测出的至少一个视频内容的数量则可以基于第一预设值来确定,能够满足第一预设值的需求即可。

又另外,在生成目标下载列表之前,视频内容下载方法还可以包括:获取预设时间内已发送的历史下载列表对应的视频内容所占用的存储空间大小之和,作为统计值;判断统计值是否超过第二预设值。相应的,生成目标下载列表,具体实现方式可以包括:在统计值未超过第二预设值的情况下,生成目标下载列表。

实际应用中,服务器可以从终端获取统计值。该统计值可以携带在预下载请求中。

上述预设时间可以为一天。该预设时间内,可能会多次生成目标下载列表,对当前生成的目标下载列表来说,在此之前的目标下载列表,称为历史下载列表。

由于终端预下载的是预测出的视频内容,该预测出的视频内容是否能够被观看,是有一定概率的,也就是说,用户可能会观看该预测出的视频内容,也可能不会观看,为了避免过度预下载,造成资源浪费,也避免增加非高峰时段的网络负担,可以对终端进行预下载的量进行限制,当超过一定量的时候,就不再生成目标下载列表供终端预下载了。并且,终端的存储空间是有限的,从这一角度来说,也不能过度预下载。

上述第二预设值的具体值可以根据实际情况进行设置。例如,可以基于终端的存储空间信息所包括的总存储空间大小确定第二预设值。该第二预设值为终端的总存储空间大小的预设百分比。举例来说,终端的总存储空间大小为8G,可以设置第二预设值为该总存储空间的80%,即6.4G。

在一种实施方式中,预下载请求可以为周期性预下载请求。每个周期的时长可以根据实际情况进行设置,例如可以每半小时至一个小时发送一次预下载请求。相应的,生成目标下载列表,其具体实现方式可以包括:在终端在预设非高峰时段内的周期性预下载请求的触发下,从候选下载列表未经历史周期选取的下载地址中,选取当前周期对应的数量的下载地址,得到目标下载列表。

这里,历史周期是指在候选下载列表生成之后的历史周期。该历史周期早于当前周期。

举例来说,候选下载列表包括依次排列的下载地址IP1,下载地址IP2,下载地址IP3,下载地址IP4,下载地址IP5,下载地址IP6,下载地址IP7,下载地址IP8,下载地址IP9,下载地址IP10,……。假设目标下载列表中的下载地址的数量为3。

在生成候选下载列表之后,第一次接收到预下载请求时,所有的下载地址都未经选取,可以选取下载地址IP1,下载地址IP2,下载地址IP3,生成目标下载地址。第二次接收到预下载请求时,下载地址IP1,下载地址IP2,下载地址IP3已经上一周期的预下载请求选取,因此,可以选取下载地址IP4,下载地址IP5,下载地址IP6,生成目标下载地址。以此类推。将候选下载列表分批发送给了终端。相应的,终端也会分批接收目标下载地址,从而分批对预测出的视频内容进行预下载。

本实施例中,预下载请求是周期性发送的,针对每次预下载请求,选择还未曾被选取的一批下载地址,生成目标下载列表,实现了候选下载列表的分批发送,使得终端对预测出的视频内容分批进行预下载,从而避免了集中使用网络带宽而增大网络带宽的峰值。并且,可以将最新的目标下载列表发送给终端进行预下载。

在一个实施方式中,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看视频内容,得到第一候选集合,如图3所示,其具体实现方式可以包括:

步骤301、基于目标历史记录,确定用户最新观看的至少一个历史视频内容的信息,每个历史视频内容的信息属于不同的剧集。

步骤302、基于历史视频内容的信息,确定历史视频内容所属的目标剧集,获取目标剧集所包括的各视频内容的播放顺序表。

步骤303、在历史视频内容不是播放顺序表的最后一个的情况下,基于播放顺序表中,播放顺序在历史视频内容之后的视频内容,得到第二候选集合。

步骤304、基于第二候选集合,得到第一候选集合。

历史视频内容的信息为剧集类视频内容的记录信息。该历史视频内容的记录信息可以包括观看时间、内容名称、内容身份证标识号(ID,Identity document)等等。不同剧集的历史视频内容的信息的内容ID的设定字段不同。

对于每个剧集来说,确定的历史视频内容的信息是该剧集最新的一个视频内容的记录信息。如果只需要确定一个目标剧集,那么,只需要确定一个视频内容的信息即可。如果需要确定多个目标剧集,则需要确定多个视频内容的信息。基于该历史视频内容的信息所包括的内容ID的设定字段就可以确定该历史视频内容所属的目标剧集。

实际应用中,每个剧集上线后,都会整理并存储该剧集的播放顺序表,该播放顺序表包括剧集顺序(即播放顺序),内容名称,内容ID。基于历史视频内容的信息所包括的内容ID可以确定该历史视频内容的剧集顺序,基于确定的剧集顺序,可以确定该历史视频内容是否为最后一个。

以名为“×江×河”的电视剧为例,播放顺序表如下:

[1,×江×河第一集,7593803268483000]

[2,×江×河第二集,7593803268483001]

[3,×江×河第二集,7593803268483002]

……

[77,×江×河第三十九集,7593803268483076]。

如果历史视频内容的信息为[2020-12-01 20:30,×江×河第一集,7593803268483000],那么,可以基于内容ID可以确定剧集顺序在第1个,那么,可以将第2至第77个视频内容作为第二候选集合。

统计所有的目标剧集对应的第二候选集合,作为第一候选集合。

本实施例中,可以准确的确定出最新的未观看的视频内容,为准确预测用户下一个高峰时段可能会观看的视频内容奠定了基础。

在一种实施方式中,基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容,其具体实现方式可以包括:选取第一候选集合中播放顺序靠前的视频内容,得到预测出的至少一个视频内容。

仍以“×江×河”的电视剧为例,用户最后观看的是第一集,那么,用户下次最后可能观看的是与第一集连续的第二集、第三集……,因此,可以从第二集开始选取视频内容,得到预测出的至少一个视频内容。

如此,将播放顺序靠前的需要先播放的视频内容作为预测出的视频内容,生成相应的目标下载列表,供终端进行预下载,可以提前下载好与历史视频内容衔接的视频内容,更有可能真正被用户观看,如果用户在高峰时段观看该预测出的视频内容,进一步降低了高峰时段整体网络带宽的使用。

在一种实施方式中,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,其具体实现方式可以包括:在历史记录有更新的情况下,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合。如此,只要用户观看视频内容的历史记录有更新,就重新得到第一候选集合,基于此,得到最新的预测出的至少一个视频内容,这样,终端对最新预测的视频内容进行预下载后,更有可能真正被用户观看,如果用户在高峰时段观看该预测出的视频内容,进一步降低了高峰时段整体网络带宽的使用。

下面对终端侧的视频内容下载方法进行说明。

图4为本发明实施例中的一种视频内容下载方法的流程图。如图4所示,本实施例提供的一种视频内容下载方法,应用于终端,该方法至少包括如下步骤:

步骤401、在预设非高峰时段内,接收服务器发送的目标下载列表,目标下载列表中包括的下载地址来自为下一个高峰时段预测出的用户观看的至少一个视频内容的下载地址,预测出的至少一个视频内容的下载地址是通过如下方式得到的:在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容。

步骤402、基于目标下载列表进行预下载。

需要说明的是,本实施例提供的终端侧的视频内容下载方法,与服务器侧相类似的部分,可以相互参考,此处不做赘述。

本方案中,在预设非高峰时段内,可以接收服务器发送的目标下载列表,该目标下载列表包括的下载地址为用户预测出的下一个高峰时段可能观看的视频内容的下载地址,基于该目标下载列表可以对预测出的视频内容进行预下载,如此,当终端的用户在下一个高峰时段想要观看该预测出的视频内容时,就可以直接调用已利用非高峰时段的免费网络带宽提前下载好的预测出的视频内容,以满足观看需求,无需再消耗高峰时段的网络带宽去下载了,在一定程度上降低了高峰时段整体网络带宽的使用,从而降低了网络带宽的峰值,降低了运营成本。

基于目标下载列表进行预下载时,具体的,终端从目标下载列表所包括的预测出的视频内容的下载地址对应的内容分发网络(Content Delivery Network)服务器,下载预测出的视频内容。

在一种实施方式中,以上视频内容下载方法还可以包括:向服务器发送预下载请求,以触发服务器生成目标下载列表。

实际应用中,目标下载列表需要在终端启动的情况下才能成功接收并进行预下载。TV终端等固定终端不同于手机等移动终端,在用户不观看的情况下,都是关闭的,无法接收该目标下载列表。

本实施例中,通过终端发送的预下载请求触发服务器生成目标下载列表,服务器能够接收到终端的预下载请求,认为终端是启动的,无需服务器再去确定终端的状态,实现更简单。

为了不影响用户观看视频内容,可以在终端的用户未观看视频内容的情况下,发送预下载请求,以基于返回的目标下载列表进行预下载。

在一种实施方式中,还包括:在预设非高峰时段内,向服务器发送周期性预下载请求;相应的,接收服务器发送的目标下载列表,具体实现方式可以包括:响应于当前周期发送的预下载请求,接收服务器发送的目标下载列表,目标下载列表是从候选下载列表未经历史周期选取的下载地址中选取得到的,候选下载列表中包括预测出的至少一个视频内容的下载地址。如此,终端可以请求到最新的目标下载列表,得到的预测出的至少一个视频内容就有更高的概率真正被用户观看。并且,可以分批接收服务器发送的目标下载列表,对预测出的视频内容分批进行预下载,从而避免了集中使用网络带宽而增大网络带宽的峰值。

在预下载请求中可以携带终端的存储空间信息,例如,总存储空间大小,当前可用的存储空间大小,预设时间内已下载的预测出的视频内容所占用的存储空间大小的统计值,等等,以使服务器基于存储空间信息,生成目标下载列表。

在一种实施方式中,终端侧的视频内容下载方法还可以包括:对完成下载的预测出的视频内容,当完成下载后间隔的时间达到预设时隔时,删除预测出的视频内容。该预设时隔的具体值可以根据实际情况设置,例如3-5天。如此,对预下载的视频内容进行了限时清理,避免占用存储空间,方便了后续继续进行预下载。

需要说明的是,如果终端的存储空间不足,可以利用当前下载的预测出的视频内容覆盖最早下载的预测出的视频内容。

下面以一个具体应用场景为例,对本发明实施例提供的一种视频内容下载方法进行更加详细地说明。

本实施例中,以TV终端为例进行说明。因为TV终端大屏的属性,其播放观看视频内容和移动终端有些差异。TV终端上播放的视频内容长视频居多,而长视频中综艺、电视剧都有相对稳定的播放时间。所以可以通过学习TV终端的用户观看视频的历史记录,预测TV终端用户之后在网络带宽使用的下一个高峰时段可能会观看的视频内容,在网络带宽使用的非高峰时段,通过提前下载的方法,将用户在网络带宽使用的高峰时段可能会观看的视频内容,提前下载并存入本地磁盘。这样,当用户在网络带宽使用的高峰时段,如果要观看提前下载好的视频内容,则可以直接从本地调取视频内容的文件播放,而不必通过网络传输来满足观看需求,从而在一定程度上降低高峰时段整体网络带宽的使用。

如图5所示,本实施例的视频内容下载方法至少包括如下步骤:

步骤一、服务器收集TV终端的用户观看视频内容的历史记录并存入历史记录数据库。

具体的,收集的TV端的历史记录包括:[观看时间,内容名称,内容ID]。

例如,[1,×江×河第一集,7593803268483000]。

然后服务器对历史记录进行分析,得到预测出的至少一个视频内容,并基于预测出的至少一个视频内容,生成目标下载列表。具体如下:

步骤二、服务器从历史记录中获取最新时间段内的历史目标,得到目标历史记录。

步骤三、服务器基于目标历史记录,得到最后观看的剧集的历史视频内容的信息。

例如,[1,×江×河第一集,7593803268483000]。

步骤四、基于历史视频内容的信息,确定该历史视频内容所属的目标剧集。

步骤五、获取目标剧集的播放顺序表。播放顺序表示例如下:

[剧集顺序,内容名称,内容ID]

[剧集顺序,内容名称,内容ID]

.......

例如:

[1,×江×河第一集,7593803268483000]

[2,×江×河第二集,7593803268483001]

[3,×江×河第二集,7593803268483002]

……

[77,×江×河第三十九集,7593803268483076]。

步骤六、基于播放顺序表中,得到播放顺序在历史视频内容之后的视频内容,即得到第二候选集合,该第一候选集合作为第一候选集合,基于此,选取播放顺序靠前的视频内容,得到预测出的至少一个视频内容。之后,获取预测出的至少一个视频内容的信息,示例如下:

[剧集顺序,内容名称,内容ID]

例如:

[2,×江×河第二集,7593803268483001]

[3,×江×河第二集,593803268483002]。

这是用户在下一天网络带宽使用高峰时段(2020-12-02 20:00左右)可能会观看的内容。

步骤七、基于预测出的至少一个视频内容,生成候选下载列表。

本步骤中,通过以上预测的用户在网络带宽使用的高峰时段会观看的内容,生成用户在非高峰时段要下载到本地的视频内容文件列表(即候选下载列表)。具体的,基于预测出的至少一个视频内容的信息所包括的内容名称和内容ID,获取预测出的至少一个视频内容的内容下载地址,基于预测出的至少一个视频内容的内容名称、内容ID和内容下载地址,生成候选下载列表,该下载列表信息示例如下:

[内容名称,内容ID,内容下载地址]

例如:

[×江×河第二集,7593803268483001,http://data.xxx.1c225a3e377f1.265ts]

[×江×河第二集,7593803268483002,http://data.xxx.1c225a3e377f2.265ts]。

步骤八、在非高峰时段内(例如00:00-06:00),TV终端在用户未观看视频内容的情况下,向服务器发送预下载请求。

步骤九、服务器接收到终端的预下载请求后,从候选下载列表中选取预测出的视频内容的下载地址,得到目标下载列表并发送给TV终端。该下载列表示例如下:

[内容名称,内容ID,内容下载地址]

例如:

[×江×河第二集,7593803268483001,http://data.xxx.1c225a3e377f1.265ts]

[×江×河第二集,7593803268483002,http://data.xxx.1c225a3e377f2.265ts]。

步骤十:TV端接收目标下载列表,基于目标下载列表,从目标下载列表所包括的预测出的视频内容的下载地址对应的CDN服务器,下载预测出的视频内容。

例如,基于下载地址http://data.xxx.1c225a3e377f1.265ts,从下载地址对应的CDN服务器将相应的文件内容(即预测出的视频内容)下载到本地,并存入磁盘。

在网络带宽使用的高峰时段(例如:20:00-21:00),TV终端的用户要观看×江×河第二集时,直接从本地磁盘调取文件,进行播放观看。

如此,采用非高峰时段的免费网络带宽,通过相应的技术手段,来间接达到降低高峰时段网络带宽的消耗,降低因网络带宽的消耗所产生的运营成本。

本方案也可以应用到其它依赖网络带宽资源的场景中。

图6为本发明实施例提供的一种视频内容下载装置的结构示意图。如图6所示,该视频内容下载装置600,应用于服务器,包括:

历史确定模块601,用于在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录;

剧集确定模块602,用于基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合;

视频预测模块603,用于基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容;

列表生成模块604,用于生成目标下载列表,目标下载列表中包括的下载地址来自预测出的至少一个视频内容的下载地址;

列表发送模块605,用于将目标下载列表发送给终端,以使终端基于目标下载列表进行预下载。

在一种实施方式中,剧集确定模块602,具体用于:

基于目标历史记录,确定用户最新观看的至少一个历史视频内容的信息,每个历史视频内容的信息属于不同的剧集;

基于历史视频内容的信息,确定历史视频内容所属的目标剧集,获取目标剧集所包括的各视频内容的播放顺序表;

在历史视频内容不是播放顺序表的最后一个的情况下,基于播放顺序表中,播放顺序在历史视频内容之后的视频内容,得到第二候选集合;

基于第二候选集合,得到第一候选集合。

在一种实施方式中,视频预测模块603,具体用于:

选取第一候选集合中播放顺序靠前的视频内容,得到预测出的至少一个视频内容。

在一种实施方式中,剧集确定模块602,具体用于:

在历史记录有更新的情况下,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合。

在一种实施方式中,还包括:

获取模块,用于获取预设时间内已发送的历史下载列表对应的视频内容所占用的存储空间大小之和,作为统计值;

判断模块,用于判断统计值是否超过第二预设值;

列表生成模块604,具体用于:

在统计值未超过第二预设值的情况下,生成目标下载列表。

在一种实施方式中,列表生成模块604,具体用于:

从候选下载列表中选取全部数量或者部分数量的下载地址,以得到目标下载列表,候选下载列表中包括预测出的至少一个视频内容的下载地址。

在一种实施方式中,列表生成模块604,具体用于:

在终端在预设非高峰时段内的周期性预下载请求的触发下,从候选下载列表未经历史周期选取的下载地址中,选取当前周期对应的数量的下载地址,得到目标下载列表。

本发明实施例提供的各装置中的各模块的功能可以参见上述服务器侧的视频内容下载方法实施例中的对应描述,在此不再赘述。

图7为本发明实施例提供的一种视频内容下载装置的结构示意图。如图7所示,该视频内容下载装置700,应用于终端,包括:

列表接收模块701,用于在预设非高峰时段内,接收服务器发送的目标下载列表,目标下载列表中包括的下载地址来自为下一个高峰时段预测出的用户观看的至少一个视频内容的下载地址,预测出的至少一个视频内容的下载地址是通过如下方式得到的:在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容;

视频下载模块702,用于基于目标下载列表进行预下载。

在一种实施方式中,还包括:

请求发送模块,用于在预设非高峰时段内,向服务器发送周期性预下载请求;

列表接收模块701,具体用于:

响应于当前周期发送的预下载请求,接收服务器发送的目标下载列表,目标下载列表是从候选下载列表未经历史周期选取的下载地址中选取得到的,候选下载列表中包括预测出的至少一个视频内容的下载地址。

本发明实施例提供的各装置中的各模块的功能可以参见上述终端侧的视频内容下载方法实施例中的对应描述,在此不再赘述。

本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,

存储器803,用于存放计算机程序;

处理器801,用于执行存储器803上所存放的程序时,实现如下步骤:

在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录;基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合;基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容;生成目标下载列表,目标下载列表中包括的下载地址来自预测出的至少一个视频内容的下载地址;将目标下载列表发送给终端,以使终端基于目标下载列表进行预下载;

或者,在预设非高峰时段内,接收服务器发送的目标下载列表,目标下载列表中包括的下载地址来自为下一个高峰时段预测出的用户观看的至少一个视频内容的下载地址,预测出的至少一个视频内容的下载地址是通过如下方式得到的:在预设非高峰时段内,将用户最新时间段内观看视频内容的历史记录,作为目标历史记录,基于目标历史记录,确定用户最新观看的至少一个目标剧集,以及基于至少一个目标剧集中所包括的未观看的视频内容,得到第一候选集合,基于第一候选集合,为下一个高峰时段预测出用户观看的至少一个视频内容;基于目标下载列表进行预下载。

上述终端提到的通信总线可以是外设部件互连标准(Perheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述终端与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如以上实施例中任一所述的方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频内容下载方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于同轴网关实现DVB广播视频高效转发的系统及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类