CN109561349B - 一种推送视频的方法和装置 - Google Patents
一种推送视频的方法和装置 Download PDFInfo
- Publication number
- CN109561349B CN109561349B CN201710883477.2A CN201710883477A CN109561349B CN 109561349 B CN109561349 B CN 109561349B CN 201710883477 A CN201710883477 A CN 201710883477A CN 109561349 B CN109561349 B CN 109561349B
- Authority
- CN
- China
- Prior art keywords
- videos
- video
- given
- ranks
- ranking
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000001914 filtration Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 13
- 230000000694 effects Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000012163 sequencing technique Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012797 qualification Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供了一种推送视频的方法和装置,用于实现对推送视频进行干预的技术效果。所述方法包括:按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频;向客户端推送所述最终排位在前K位的视频。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种推送视频的方法和装置。
背景技术
目前推送视频的方式为按照一定算法计算视频排序,然后由服务器的管理人员或者服务器自动将排序靠前的视频推送到客户端,进而在客户端显示服务器推送的视频。然而,一些应当被强力推送的视频,例如公益视频,由于排序很低而得不到推送。
鉴于此,对于现有技术中的推送方式就需要进行人工干预。
发明内容
本发明实施例提供了一种推送视频的方法和装置,用于实现对推送视频进行干预的技术效果。
第一方面,本发明提供了一种推送视频的方法,包括:
按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频;
向客户端推送所述最终排位在前K位的视频。
可选的,所述基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,包括:
将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;
按照所述预设顺序将P个所述第一视频确定为前K位最终排位中除所述给所述定排位以外的其他排位的视频,P为整数,0≤P≤N。
可选的,如果M个所述给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,所述基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,还包括:
将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频。
可选的,在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,还包括:
从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频;
基于不同于所述第一视频参数的第二视频参数对N个所述第一视频进行所述预设排序。
可选的,在所述从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频之后,还包括:
接收所述用户输入的过滤条件;
按照所述过滤条件过滤N个所述第一视频。
可选的,N个所述第一视频和M个所述第二视频包括时限参数,在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,还包括:
过滤掉N个所述第一视频和M个所述第二视频中所述时限参数超过阈值的视频。
可选的,每隔预设周期获取一次最终排位在前K位的视频。
第二方面,本发明提供了一种推送视频的装置,包括:
存储模块,用于按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
接收模块,用于接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
排位模块,用于基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频;
推送模块,用于向客户端推送所述最终排位在前K位的视频。
可选的,所述排位模块用于将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;按照所述预设顺序将P个所述第一视频确定为前K位最终排位中除所述给所述定排位以外的其他排位的视频,P为整数,0≤P≤N。
可选的,如果M个所述给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,所述排位模块还用于将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频。
可选的,所述装置还包括:
选取模块,用于在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频;
排序模块,用于基于不同于所述第一视频参数的第二视频参数对N个所述第一视频进行所述预设排序。
可选的,所述装置还包括第一过滤模块,用于在所述从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频之后,接收所述用户输入的过滤条件,按照所述过滤条件过滤N个所述第一视频。
可选的,N个所述第一视频和M个所述第二视频包括时限参数,所述装置还包括:
第二过滤模块,用于在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,过滤掉N个所述第一视频和M个所述第二视频中所述时限参数超过阈值的视频。
可选的,所述排位模块用于每隔预设周期获取一次最终排位在前K位的视频。
第三方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面任一项所述方法的步骤。
第四方面,本发明提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面任一项所述方法的步骤。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
在本发明实施例的技术方案中,按照预设排序在重申redis中缓存入备选推送的N个第一视频,N为大于等于0的整数,以及接收用户输入的强制推送的M个第二视频,以及每个第二视频的给定排位,M为正整数,然后,基于预设排序的N个第一视频、M个第二视频以及每个第二视频的给定排位,获取N个第一视频和M个第二视频中最终排位在前K位的视频,K为正整数,K≥M,最后向客户端推送最终排位在前K位的视频,K个视频包括至少一个第二视频。由于推送的K个视频是根据用户需要强制推送的M个第二视频,以及第二视频的给定排位来从N个第一视频和M个第二视频中最终确定的,K视频中至少包括了一个第二视频,故而保证了将强制推送的第二视频推送到客户端,所以解决了现有技术需求对推送视频进行人工干预的技术问题,实现了对推送视频人工干预的技术效果。
附图说明
图1为本发明实施例中推送视频的方法流程图;
图2为本发明实施例中推送视频的装置结构示意图;
图3为本发明实施例中计算机设备的结构示意图。
具体实施方式
本发明实施例提供了一种推送视频的方法和装置,用于实现对推送视频进行干预的技术效果。
为了解决上述技术问题,本发明提供的技术方案总体思路如下:
在本发明实施例的技术方案中,按照预设排序在重申redis中缓存入备选推送的N个第一视频,N为大于等于0的整数,以及接收用户输入的强制推送的M个第二视频,以及每个第二视频的给定排位,M为正整数,然后,基于预设排序的N个第一视频、M个第二视频以及每个第二视频的给定排位,获取N个第一视频和M个第二视频中最终排位在前K位的视频,K为正整数,K≥M,最后向客户端推送最终排位在前K位的视频,K个视频包括至少一个第二视频。由于推送的K个视频是根据用户需要强制推送的M个第二视频,以及第二视频的给定排位来从N个第一视频和M个第二视频中最终确定的,K视频中至少包括了一个第二视频,故而保证了将强制推送的第二视频推送到客户端,所以解决了现有技术需求对推送视频进行人工干预的技术问题,实现了对推送视频人工干预的技术效果。
下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互组合。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本发明第一方面提供了一种推送视频的方法,请参考图1,为本发明实施例中推送视频的方法流程图。该方法包括:
S101:按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
S102:接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
S103:基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频;
S104:向客户端推送所述最终排位在前K位的视频。
具体来讲,在S101中N个第一视频是向客户端推送的备选视频。N为大于等于0的整数,其中,当N=0时,表示当前不存在备选推送给客户端的视频。
数据库存储的第一视频是按照预设顺序缓存,预设顺序可以参考点击量、点赞量或评论数等排序的,本发明不做具体限制。以预设顺序为由高到低排序为例,排序越靠前的第一视频被推送给客户端的可能越高,反之,排序越靠后的第一视频被推送给客户端的可能越低。
在具体实现过程中,可以按照任意方式获取预设排序的N个第一视频。下面则对其中一种实施方式进行介绍,在该种实施方式中,在S101之前还包括:
从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频;
基于不同于所述第一视频参数的第二视频参数对N个所述第一视频进行所述预设排序。
具体来讲,第一视频参数和第二视频参数都为可以表示视频热度的视频参数,但二者为不同的视频参数,视频参数例如为播放量、点赞量和评论数等,在具体实现过程中,本发明所属领域的普通技术人员可以根据实际进行选择,本发明不做具体限制。为方便说明,下文中以播放量为第一视频参数,点赞量为第二视频参数为例进行介绍。
在redis中,按有序集合的结构存储多个视频。具体地,该有序集合以日期为键值Key,视频id和对应的播放量为值。在具体实现过程中,可以将某网站的全部视频都缓存在redis中,或者将网络全部的视频存储在redis中。并且,运用编译型语言go语言编写相应统计视频播放量的定时任务,定时更新redis种各个视频的播放量。
在当天零点到达之后,每个视频前一天的播放量成为既定数据,进而从redis中搜索出Key为前一天且播放量最大的N个视频作为第一视频。接下来,基于N个第一视频的视频id,通过RPC(远程过程调用协议,Remote Procedure Call Protocol)从服务层获取N个第一视频对应的点赞量,然后以视频id为Key点赞量为值的方式将N个第一视频存储在likeList列表中。然后,利用排序arsort()函数按点赞量对N个第一视频进行排序,从而得到预设排序的N个第一视频。
那么,将N个第一视频进行预设排序后,就将N个第一视频落地到数据库中。预设排序的N个第一视频存储在CalList列表中。
由上述描述可知,通过从redis多个视频中选取第一视频参数最大的N个第一视频,再基于第二视频参数对N个第一视频进行预设排序,不仅保证了最终存入数据库的N个第一视频的第一视频参数(例如播放量)较大,而且还保证了第二视频参数(例如点赞量)较大的视频排序靠前易被推送,由此使得热度较高的视频更易被推送给客户端,故而达到了提高推送准确率的技术效果。
进一步,由于在具体实现过程中,某些第一视频的第一视频参数和/或第二视频参数较高,但是并不适宜推送给客户端,例如违法视频,或者已经推送过的视频,因此为了避免该类型的第一视频被推送给客户端,在从redis多个视频中选取第一视频参数最大的N个视频为第一视频之后,还可以进一步包括:
接收所述用户输入的过滤条件;
按照所述过滤条件过滤N个所述第一视频。
具体来讲,本发明实施例中的过滤条件是由用户输入的,而本发明实施例中的用户具体指的是推送网站的运营人员。用户按照需要输入一个或多个过滤条件,当然,如果不需要过滤也可以不输入过滤条件。举例来说,假设过滤条件有两个,第一个过滤条件为“来源为计算读取且已被下架数据”,以过滤掉强制下架的视频,第二个过滤条件为“来源为计算读取且已被展示过数据”,以过滤掉过期视频。
然后,按照过滤条件从redis中查询出满足过滤条件的视频,并将查询到的视频存储到过滤列表中,接着,判断likeList中的视频是否在过滤列表中,如果在,则移除该视频,重新补入视频,如果不在则保留该视频。
举例来说,假设按照上述第一个过滤条件在redis中查询到的视频存储在filterList1中,按照上述第二个过滤条件在redis中查询到的视频存储在filterList2中。然后,令rank值为1,循环likeList,当vid满足in_array(vid,filterList1)||in_array(vid,filterList2)时,移除当前视频,当vid不满足in_array(vid,filterList1)||in_array(vid,filterList2)时,保留当前视频在LikeList中。
由上述描述可知,通过上述过滤,保证了运营人员认为不适应推送的视频被过滤出来,以免被推送给客户端造成恶劣影响。
更进一步,该过滤操作仅需运行一次,但为了防止机器宕机或用户意外操作,导致重复运行程序,最终落地到数据库中的数据会重复,排位也会重复,造成错误,还可以进一步删除数据库中日期为当天日期的数据。
接下来,在S101中,将过滤后且按照预设排序的N个第一视频落地存储到数据库中。
接下来,在S102中,接收用户输入的强制推送的M个第二视频,以及每个第二视频的给定排位,M为正整数。具体来讲,本发明实施例中的排位指的是最终推送到客户端的资格和顺序,例如向客户端推送排位1至5的视频,则排位在5以前的视频才具有被推送的资格,且推送顺序依照排位。给定排位指的是用户为视频给定的排位。一个具体的例子,假设用户输入了3个第二视频,该3个第二视频及给定排位具体为:视频A,排位1;视频B,排位3;视频C,排位21。
本发明实施例中的M为正整数,即1、2或5等。但在具体实现过程中,如果用户没有需要强制推送的第二视频,则不输入第二视频以及第二视频的排位,此时M=0。
另外,在具体实现过程中,S102也可以在S101之前执行,或者与S101同时实现,本发明不做具体限制。
可选的,类似于对N个第一视频的过滤,为了避免用户误输入的不宜推送的第二视频,也可以按照上文介绍的方式对M个第二视频进行过滤,此处就不再重复赘述了。
并且,在S103之前,还可以过滤掉N个第一视频和M个第二视频中时限参数超过阈值的视频。具体地,时限参数具体为视频的日期,阈值则是过期日期,例如阈值为2017年1月1日,则日期为2017年1月1日之前的视频则被过滤掉。
接下来,在S103中,基于预设排序的N个第一视频、M个第二视频以及每个第二视频的给定排位,获取N个第一视频和M个第二视频中最终排位在前K位的视频。具体来讲,每隔预设周期获取一次排位在前K为的视频,预设周期例如为5分钟或10分钟。K为正整数,K的取值具体由用户输入,即用户按照需要确定一次向客户端推送的视频数量。排位在前K位的K个视频中包括M个第二视频。
在本发明实施例中,具体可以通过如下过程获取前K位的K个视频:
将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;
按照所述预设顺序将P个所述第一视频确定为前K位最终排位中除所述给所述定排位以外的其他排位的视频,P为整数,0≤P≤N。
具体来讲,由于用户输入的第二视频已经具有了给定排位,因此针对给定排位小于等于K的第二视频,则直接将该第二视频的给定排位确定为最终排位,而该第二视频则为相应的最终排位对应的视频。而给定排位以外的其他排位,则从预设排序的N个第一视频中依次取P个第一视频补充。其中,P为整数,0≤P≤N。
更具体地说,while循环(rank<maxRankNums+1),maxRankNums为最大排位,即K。另M个第二视频存储在yunList列表中,当array_key_exists(rank,yunRankMap),即yunList中具有与当前最终排位一致的给定排位时,array_shift(yunList)从yunList中取出该条视频,并将取出的视频存储到推送列表hotTwentyList中。反之,当yunList中不具有与当前最终排位一致的给定排位时,vidTmp=array_shift(CalList)取当前排序第一的第一视频,将取出的第二视频存储在hotTwentyList中,同时将rank增加1。
举例来说,假设用户输入的K=10,沿用上文中的例子,视频A,排位1,视频B,排位3,视频C,排位10。首先确定最终排位为1的视频:由于第二视频视频A的给定排位为1,因此确定最终排位为1的视频为视频A,并从第二视频中移除视频A。接着确定最终排位为2的视频:由于第二视频中没有给定排位为2的视频,因此取N个第一视频中排序第一的视频,假设为视频d1,因此确定最终排位为2的视频为视频d1,并从第一视频中移除视频d1。接着确定最终排位为3的视频:由于第二视频视频B的给定排位为3,因此确定最终排位为3的视频为视频B,并从第二视频中移除是视频B。依次类推,直到确定完排位在前10位的视频。
由上述描述可以看出,通过将每个第二视频确定为最终排位为给定排位的视频,即按照用户给定的给定排位给予每个视频最终排位,保证了给定排位小于等于K的第二视频排序在前K位被推送。
在具体实现过程中,由于M个第二视频以及给定排位都是用户输入的,K也是用户输入,因此一般情况下M个给定排位会均小于等于K。但是,如果用户误输入了大于K的给定排位时,为了使强制推送的第二视频能被推送,因此如果M个给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,那么S101还包括:
将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频。
还是假设用户输入的K=10,视频A和视频B的排位还是沿用上文中的例子,即视频A排位1,视频B排位3,但此处假设视频C的排位误输入为了12。排位1至9的视频确定方法与上文相同,因此相同之处就不再重复了。不同之处在于,确定最终排位为10的视频:由于第二视频中没有给定视频为10的视频,但是具有一个给定排位大于10视频,因此确定最终排位为10的视频为视频C,并从第二视频中移除是视频C。
由上述描述可知,通过将给定排位大于K的Q个第二视频确定为最终排位为K-Q+1位至K位的视频,不仅保证了给定排位小于等于K的第二视频排序在前K位被推送,同时也保证了给定排位大于K的第二视频也能被推送,进而达到了用户需要强制推送的M个第二视频均被推送的技术效果。
最后,在S104中,将确定出的K个视频推送到客户端。
通过本发明实施例中的技术方案,最终向客户端推送的K个视频,不仅包括了运营人员需要强制推送的M个第二视频,也包括了热度最高的P个第一视频,故而达到了提高推送准确率的技术效果。
基于与前述实施例中推送视频的方法同样的发明构思,本发明第二方面还提供一种推送视频的装置,如图2所示,包括:
存储模块101,用于按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
接收模块102,用于接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
排位模块103,用于基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频;
推送模块104,用于向客户端推送所述最终排位在前K位的视频。
具体来讲,排位模块103用于将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;按照所述预设顺序将P个所述第一视频确定为前K位最终排位中除所述给所述定排位以外的其他排位的视频,P为整数,0≤P≤N。
如果M个所述给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,排位模块103还用于将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频。
进一步,所述装置还包括:
选取模块,用于在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频;
排序模块,用于基于不同于所述第一视频参数的第二视频参数对N个所述第一视频进行所述预设排序。
进一步,所述装置还包括第一过滤模块,用于在所述从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频之后,接收所述用户输入的过滤条件,按照所述过滤条件过滤N个所述第一视频。
进一步,N个所述第一视频和M个所述第二视频包括时限参数,所述装置还包括:
第二过滤模块,用于在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,过滤掉N个所述第一视频和M个所述第二视频中所述时限参数超过阈值的视频。
排位模块103用于每隔预设周期获取一次最终排位在前K位的视频。
前述图1实施例中的推送视频的方法的各种变化方式和具体实例同样适用于本实施例的推送视频的装置,通过前述对推送视频的方法的详细描述,本领域技术人员可以清楚的知道本实施例中推送视频的装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于与前述实施例中推送视频的方法同样的发明构思,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文所述推送视频的方法的任一方法的步骤。
基于与前述实施例中推送视频的方法同样的发明构思,本发明还提供一种计算机设备,如图3所示,包括存储器204、处理器202及存储在存储器204上并可在处理器202上运行的计算机程序,所述处理器202执行所述程序时实现前文所述控制进度条的方法的任一方法的步骤。
其中,在图3中,总线架构(用总线200来代表),总线200可以包括任意数量的互联的总线和桥,总线200将包括由处理器202代表的一个或多个处理器和存储器204代表的存储器的各种电路链接在一起。总线200还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口206在总线200和接收器201和发送器203之间提供接口。接收器201和发送器203可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器202负责管理总线200和通常的处理,而存储器204可以被用于存储处理器202在执行操作时所使用的数据。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
在本发明实施例的技术方案中,按照预设排序在重申redis中缓存入备选推送的N个第一视频,N为大于等于0的整数,以及接收用户输入的强制推送的M个第二视频,以及每个第二视频的给定排位,M为正整数,然后,基于预设排序的N个第一视频、M个第二视频以及每个第二视频的给定排位,获取N个第一视频和M个第二视频中最终排位在前K位的视频,K为正整数,K≥M,最后向客户端推送最终排位在前K位的视频,K个视频包括至少一个第二视频。由于推送的K个视频是根据用户需要强制推送的M个第二视频,以及第二视频的给定排位来从N个第一视频和M个第二视频中最终确定的,K视频中至少包括了一个第二视频,故而保证了将强制推送的第二视频推送到客户端,所以解决了现有技术需求对推送视频进行人工干预的技术问题,实现了对推送视频人工干预的技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种推送视频的方法,其特征在于,包括:
按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频,包括:将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;按照所述预设排序 将P个所述第一视频确定为前K位最终排位中除所述给定排位以外的其他排位的视频,P为整数,0≤P≤N;如果M个所述给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,所述基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,还包括:将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频;
向客户端推送所述最终排位在前K位的视频。
2.如权利要求1所述的方法,其特征在于,在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,还包括:
从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频;
基于不同于所述第一视频参数的第二视频参数对N个所述第一视频进行所述预设排序。
3.如权利要求2所述的方法,其特征在于,在所述从重申redis多个视频中选取第一视频参数最大的N个视频为所述第一视频之后,还包括:
接收所述用户输入的过滤条件;
按照所述过滤条件过滤N个所述第一视频。
4.如权利要求1所述的方法,其特征在于,N个所述第一视频和M个所述第二视频包括时限参数,在所述获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频之前,还包括:
过滤掉N个所述第一视频和M个所述第二视频中所述时限参数超过阈值的视频。
5.如权利要求1所述的方法,其特征在于,每隔预设周期获取一次最终排位在前K位的视频。
6.一种推送视频的装置,其特征在于,包括:
存储模块,用于按照预设排序在数据库中存入备选推送的N个第一视频,N为大于等于0的整数;
接收模块,用于接收用户输入的强制推送的M个第二视频,以及每个所述第二视频的给定排位,M为正整数;
排位模块,用于基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,K为正整数,K个视频中包括M个所述第二视频,包括:将每个所述第二视频确定为所述最终排位为所述给定排位的视频,其中,M个所述给定排位均小于等于K;按照所述预设排序将P个所述第一视频确定为前K位最终排位中除所述给定排位以外的其他排位的视频,P为整数,0≤P≤N;如果M个所述给定排位包括Q个大于K的排位,Q为整数,0<Q≤M≤K,所述基于所述预设排序的N个所述第一视频、M个所述第二视频以及每个所述第二视频的给定排位,获取N个所述第一视频和M个所述第二视频中最终排位在前K位的视频,还包括:将所述给定排位大于K的Q个所述第二视频确定为所述最终排位为K-Q+1位至K位的视频;
推送模块,用于向客户端推送所述最终排位在前K位的视频。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5任一项所述方法的步骤。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710883477.2A CN109561349B (zh) | 2017-09-26 | 2017-09-26 | 一种推送视频的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710883477.2A CN109561349B (zh) | 2017-09-26 | 2017-09-26 | 一种推送视频的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109561349A CN109561349A (zh) | 2019-04-02 |
CN109561349B true CN109561349B (zh) | 2021-11-09 |
Family
ID=65863276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710883477.2A Active CN109561349B (zh) | 2017-09-26 | 2017-09-26 | 一种推送视频的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109561349B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113422987A (zh) * | 2021-07-15 | 2021-09-21 | 南京感动科技有限公司 | 一种高速公路视频数据调用方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095431A (zh) * | 2015-07-22 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 根据用户的行为信息推送视频的方法和装置 |
CN105868423A (zh) * | 2016-06-20 | 2016-08-17 | 武汉斗鱼网络科技有限公司 | 一种基于视频网站的视频人气排名方法和*** |
CN106131601A (zh) * | 2016-06-29 | 2016-11-16 | 乐视控股(北京)有限公司 | 视频推荐方法及装置 |
CN106792081A (zh) * | 2016-12-07 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 直播视频的推送方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8365227B2 (en) * | 2009-12-02 | 2013-01-29 | Nbcuniversal Media, Llc | Methods and systems for online recommendation |
US9031954B1 (en) * | 2012-12-31 | 2015-05-12 | Google Inc. | Methods, system, and media for recommending media content |
-
2017
- 2017-09-26 CN CN201710883477.2A patent/CN109561349B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095431A (zh) * | 2015-07-22 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 根据用户的行为信息推送视频的方法和装置 |
CN105868423A (zh) * | 2016-06-20 | 2016-08-17 | 武汉斗鱼网络科技有限公司 | 一种基于视频网站的视频人气排名方法和*** |
CN106131601A (zh) * | 2016-06-29 | 2016-11-16 | 乐视控股(北京)有限公司 | 视频推荐方法及装置 |
CN106792081A (zh) * | 2016-12-07 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 直播视频的推送方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109561349A (zh) | 2019-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10157205B2 (en) | Parallel preparation of a query execution plan in a massively parallel processing environment based on global and low-level statistics | |
US10749668B2 (en) | Reduction in storage usage in blockchain | |
JP7093599B2 (ja) | ブロックチェーンにおけるスナップショットを管理する方法、コンピュータ・プログラム、スナップショット・ノード、オーディタ・ノードおよびシステム | |
US9575800B2 (en) | Using queues corresponding to attribute values and priorities associated with units of work and sub-units of the unit of work to select the units of work and their sub-units to process | |
CN110998558B (zh) | 区块链中数据库哈希码的延迟更新 | |
CN109445827B (zh) | 一种游戏更新的方法及装置、电子设备、存储介质 | |
US11762822B2 (en) | Determining when a change set was delivered to a workspace or stream and by whom | |
US20150269161A1 (en) | Similarity and ranking of databases based on database metadata | |
US10929188B2 (en) | Selective and piecemeal data loading for computing efficiency | |
CN106775470B (zh) | 一种数据存储的方法及*** | |
CN106776785B (zh) | 一种数据写入方法及装置和数据处理*** | |
CN109561349B (zh) | 一种推送视频的方法和装置 | |
EP3139290A1 (en) | Method and system for merging data | |
US10747766B2 (en) | Context based access path selection | |
CN111659125A (zh) | 基于游戏的好友推荐方法、装置及计算机可读存储介质 | |
CN109213922B (zh) | 一种对搜索结果排序的方法和装置 | |
US20190197495A1 (en) | Scheduling business process | |
CN107577808B (zh) | 一种多级列表页排序的方法、装置、服务器及介质 | |
US20200159774A1 (en) | Method and apparatus for retrieving a data package | |
CN111045700A (zh) | 数据更新方法、装置、***、存储介质及电子设备 | |
CN105474255A (zh) | 确定媒体内容项目之间的派生的可能性和程度 | |
CN110928954A (zh) | HBase索引同步方法、装置、计算机设备及存储介质 | |
CN111143582A (zh) | 一种双索引实时更新联想词的多媒体资源推荐方法及装置 | |
CN103970860A (zh) | 一种数据处理的方法、装置及*** | |
US11720394B2 (en) | Automatic code path determination |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240530 Address after: 716000 A4-303 Entrepreneurship Town, Baota District, Yan'an City, Shaanxi Province Patentee after: Yan'an Dongchao Media Co.,Ltd. Country or region after: China Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd. Country or region before: China |