一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

弹幕推送方法和弹幕系统与流程

2023-02-10 16:07:16 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种弹幕推送方法、系统、计算机设备及计算机可读存储介质,以及一种弹幕系统。


背景技术:

2.随着视频直播技术的快速发展,越来越多的用户可以通过网络观看各种直播视频节目。在观看直播视频节目的过程中,用户可以通过发送弹幕的方式,与主播和其他用户进行互动。所述弹幕,是通过网络观看视频时弹出的并沿预定方向移动的字幕,是一种交流信息。弹幕在英文中还没有固定词汇,其通常称之为:comment、danmaku、barrage、bullet screen、bullet-screen comment等。弹幕允许用户发表评论或感想,但与普通视频分享网站只在播放器下专用点评区显示不同,其会以滑动字幕的方式实时出现在视频画面上,保证所有观看者都能注意到。
3.随着弹幕的流行,弹幕的密度越来越高,弹幕的内容也越来越非丰富,从而出现以下问题:
4.(1)弹幕密度大,经常出现整个屏幕被弹幕占满的情况,影响用户观看视频的体验;
5.(2)不同用户在同一时刻观看到的弹幕都是一样的,但是不同用户之间的习惯、偏好均具有一定的差异性,有些弹幕的内容并不符合部分用户的需求,影响用户体验。


技术实现要素:

6.本技术实施例的目的是提供一种弹幕推送方法、系统、计算机设备、计算机可读存储介质及一种弹幕系统,用于解决以下问题:弹幕密度大,有些弹幕的内容不符合部分用户的需求。
7.本技术实施例的一个方面提供了一种弹幕推送方法,所述方法包括:
8.获取多个弹幕,并根据各个弹幕的发射时间,将所述多个弹幕分为多个弹幕分片;
9.接收终端的请求,所述请求包括视频信息和用户标识;
10.根据所述视频信息,从所述多个弹幕分片中选择部分弹幕分片;
11.根据所述用户标识,对所述部分弹幕分片对应的多个目标弹幕进行排序以得到排序结果;
12.根据所述排序结果,从所述多个目标弹幕中选择多个待显示弹幕;及
13.将所述多个待显示弹幕推送至所述终端,以在所述终端进行弹幕展示。
14.可选的,所述获取多个弹幕,包括:
15.获取多个初始弹幕,所述多个初始弹幕包括离线弹幕和实时弹幕;
16.根据各个初始弹幕的弹幕内容,对所述各个初始弹幕进行初步排序;及
17.根据所述初步排序得到的初步排序结果,从所述多个初始弹幕中筛选出所述多个弹幕。
18.可选的,每个弹幕分片被配置有限制弹幕数量的预设数量,所述初步排序结果包括各个弹幕的初步排序分值;
19.所述方法还包括更新各个弹幕分片:
20.若接收到新弹幕,则根据所述新弹幕的发射时间确定所述新弹幕对应的待更新弹幕分片;
21.计算所述新弹幕的初步排序分值;及
22.若所述待更新弹幕分片对应的弹幕数量达到所述预设数量,则根据所述新弹幕的初步排序分值和所述待更新弹幕分片的各个弹幕的初步排序分值,确定待替换弹幕,从所述待更新弹幕分片移除所述待替换弹幕并将所述新弹幕替换到所述待更新弹幕分片,其中所述待替换弹幕的初步排序分值低于所述新弹幕的初步排序分值。
23.可选的,所述根据所述用户标识,对所述部分弹幕分片对应的多个目标弹幕进行排序以得到排序结果,包括:
24.根据所述用户标识,获取目标用户的用户信息;
25.获取各个目标弹幕的弹幕信息;及
26.根据所述用户信息和所述各个目标弹幕的弹幕信息,对所述各个目标弹幕进行排序以得到所述排序结果。
27.可选的,所述请求还包括所述终端的设备信息和/或播放器信息;所述根据所述排序结果,从所述多个目标弹幕中选择多个待显示弹幕,包括:
28.根据所述设备信息和/或播放器信息,确定最大弹幕数量;及
29.根据所述排序结果和所述最大弹幕数量,从所述多个目标弹幕中选择所述多个待显示弹幕;其中,所述多个待显示弹幕的弹幕数量不大于所述最大弹幕数量。
30.本技术实施例的一个方面又提供了一种弹幕推送装置,包括:
31.分片模块,用于获取多个弹幕,并根据各个弹幕的发射时间,将所述多个弹幕分为多个弹幕分片;
32.接收模块,用于接收终端的请求,所述请求包括视频信息和用户标识;
33.第一选择模块,用于根据所述视频信息,从所述多个弹幕分片中选择部分弹幕分片;
34.排序模块,用于根据所述用户标识,对所述部分弹幕分片对应的多个目标弹幕进行排序以得到排序结果;
35.第二选择模块,用于根据所述排序结果,从所述多个目标弹幕中选择多个待显示弹幕;及
36.推送模块,用于将所述多个待显示弹幕推送至所述终端,以在所述终端进行弹幕展示。
37.本技术实施例的一个方面又提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述弹幕推送方法的步骤。
38.本技术实施例的一个方面又提供了一种计算机可读存储介质,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述弹幕推送方法的步骤。
39.本技术实施例的一个方面又提供了一种弹幕系统,所述系统包括:
40.弹幕物料系统,用于基于弹幕标识索引得到对应的弹幕信息;
41.弹幕分片系统,用于:根据多个弹幕中的各个弹幕的发射时间,对所述多个弹幕的弹幕标识进行分片以得到多个弹幕分片,每个弹幕分片包括同一时间分片的弹幕标识;及
42.精排序聚合服务系统,用于:响应于目标用户通过终端发送的请求,从所述弹幕分片系统中获取部分弹幕分片;根据所述部分弹幕分片中的各个弹幕标识,从所述弹幕物料系统中获取所述各个弹幕标识的弹幕信息;基于目标用户的用户信息和所述各个弹幕标识的弹幕信息,对所述各个弹幕标识进行排序,以根据排序结果从所述部分弹幕分片选择多个目标弹幕标识,从所述弹幕物料系统中获取各个目标弹幕标识的弹幕信息,并推送各个目标弹幕标识的弹幕信息到所述终端。
43.可选的,弹幕分片系统,还用于:从所述弹幕物料系统中获取视频的各个初始弹幕的部分弹幕信息;及根据所述各个初始弹幕的部分弹幕信息筛选出所述多个弹幕的弹幕标识。
44.本技术实施例提供的弹幕推送方法、系统、设备及计算机可读存储介质,以及弹幕系统,包括以下优点:
45.(1)选择出部分弹幕分片并将其对应的各个目标弹幕进行排序,以选择出符合目标用户的个性化的待显示弹幕,一定程度上减少了弹幕展示数量。即,降低了弹幕密度,一定程度上避免了整个屏幕被弹幕占满的情况,提高了目标用户观看视频的体验。
46.(2)选择出目标用户的个性化的待显示弹幕,满足目标用户精准的个性化需求,提高用户体验。
附图说明
47.图1示意性示出了根据本技术实施例的弹幕推送方法的应用环境图;
48.图2示意性示出了根据本技术实施例的弹幕系统的系统架构图;
49.图3示意性示出了根据本技术实施例一的弹幕推送方法的流程图;
50.图4为图3中步骤s300的子步骤流程图;
51.图5示意性示出了根据本技术实施例一的弹幕推送方法的新增步骤流程图;
52.图6为图3中步骤s306的子步骤流程图;
53.图7为图3中步骤s308的子步骤流程图;
54.图8示意性示出了根据本技术实施例二的弹幕推送装置的框图;及
55.图9示意性示出了根据本技术实施例三的适于实现弹幕推送方法的计算机设备的硬件架构示意图。
具体实施方式
56.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.需要说明的是,在本技术实施例中涉及“第一”、“第二”等的描述仅用于描述目的,
而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
58.在本技术的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本技术及区别每一步骤,因此不能理解为对本技术的限制。
59.以下为本技术的术语解释:
60.弹幕,是通过网络观看视频时弹出的并沿预定方向移动的字幕。弹幕在英文中还没有固定词汇,其通常称之为:comment、danmaku、barrage、bullet screen、bullet-screen comment等。弹幕允许观看视频者发表评论或感想,但与普通视频分享网站只在播放器下专用点评区显示不同,其会以滑动字幕的方式实时出现在视频画面上,保证所有观看者都能注意到。一些弹幕系统利用css(cascading style sheets,层叠样式表)或javascript语言能提供特定的弹幕形式,如弹幕特定位置出现或消失,控制弹幕弹出速度,弹幕位置等。除此之外,在画面底部或顶部固定出现的弹幕也会作为没字幕视频的字幕使用。
61.例如,每个弹幕可以包括如下信息:
62.{
63.发射在视频中的时间单位秒;
64.弹幕的类型;
65.弹幕文字的大小;
66.弹幕文字的颜色;
67.弹幕创建的日期;
68.弹幕的类名;
69.创建弹幕的用户标识;
70.弹幕标识;
71.弹幕内容(如,文字);
72.弹幕的持续时间;
73.弹幕是否有边框;
74.弹幕边框的颜色;
75.弹幕的行间样式;
76.}
77.图1示意性示出了根据本技术实施例的环境应用示意图。如图1所示:
78.提供商网络2可以通过网络4连接多个终端6。提供商网络2可以提供内容服务。
79.提供商网络2可以实现内容和弹幕服务等。例如,经由一个或多个网络4将弹幕发送给多个终端6。网络4包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或类似。网络4可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,其组合等。网络4可以包括无线链路,诸如蜂窝链路,卫星链路,wi-fi链路等。
80.多个终端6可以被配置为访问提供商网络2的内容和服务。终端6可以包括任何类
型的电子设备,诸如手机、平板设备、膝上型计算机、工作站、虚拟现实设备、游戏设备、机顶盒、数字流媒体设备、车辆终端、智能电视、机顶盒等。
81.多个终端6可以内容(视频、弹幕内容等)输出(例如,显示、渲染、呈现)给用户。
82.以下进一步介绍提供商网络2:
83.提供商网络2可以由一个或多个计算节点实现。一个或多个计算节点可以包括虚拟化的计算实例。虚拟化的计算实例可以包括虚拟机,例如计算机系统,操作系统,服务器等的仿真。计算节点可以基于虚拟映像和/或定义用于仿真的特定软件(例如,操作系统,专用应用程序,服务器)的其他数据,由计算节点加载虚拟机。随着对不同类型的处理服务的需求改变,可以在一个或多个计算节点上加载和/或终止不同的虚拟机。可以实现管理程序来管理同一计算节点上不同虚拟机的使用。
84.提供商网络2可以提供内容服务。其中,内容服务可以被配置为提供诸如视频,音频,文本数据,其组合等的内容。内容可以包括内容流(例如,视频流,音频流,信息流),内容文件(例如,视频文件,音频文件,文本文件)和/或其他数据。
85.提供商网络2可以被配置为管理用于各种内容项的消息。用户可以浏览内容并访问不同的内容项以查看针对特定内容的评论,例如其他用户针对该特定内容发布的评论。来自与特定内容项目相关联的用户的评论可以被输出到观看该特定内容项目的其他用户。例如,访问内容项目(例如,视频)的所有用户可以查看与该内容项目相关联的评论。输入的评论内容可以实时或接近实时地输出。
86.提供商网络2可以被配置为接收多个消息。所述多个消息可以包括与内容相关联的多个弹幕。
87.提供商网络2可以被配置为处理多个消息,例如,消息存储、消息筛选、消息推送等各种处理操作。其中,消息存储用于将多个消息存储在诸如数据库的数据存储中。消息筛选可以包括拒绝或标记与筛选标准匹配的消息。其中,筛选标准可以指定术语和/或短语,例如亵渎,仇恨言论,不雅语言等。筛选标准可以指定字符,例如符号,字体等。筛选标准可以指定语言,计算机可读代码模式等。
88.提供商网络2可以执行自然语言处理,主题识别,模式识别,人工智能等,以自动确定消息的特征和/或对消息进行分组。作为示例,频繁出现的短语或模式可以被识别为主题。作为另一个示例,可以维护与内容相关联的主题的数据库。主题可以包括流派(例如,动作,戏剧,喜剧),个性(例如,演员,女演员,导演),语言等。可以基于客户端设备和/或发送消息的用户的特征对消息进行分组。可以存储人口统计学,兴趣,历史和/或类似物以供多个用户确定消息的潜在分组。例如,可以对各个用户上传的弹幕进行筛选、过滤、排序以及个性化推送等。
89.提供商网络2可以提供弹幕服务,该弹幕服务被配置为允许用户评论和/或共享与内容相关联的评论,即弹幕。弹幕以与内容一起呈现在同一屏幕上。例如,弹幕可以在内容上方的覆盖图中显示。弹幕在显示时可能会带有动画效果。例如,弹幕可以滚动(例如,从右到左,从左到右,从上到下,从下到上),这种动画效果可以基于css3的transition属性实现的。
90.作为示例,提供商网络2可以配置弹幕系统,通过弹幕系统提供所述弹幕服务。
91.如图2所示,所述弹幕系统包括:
92.(1)弹幕数据库20,用于存储弹幕。
93.可以用于存储弹幕的弹幕信息,如弹幕标识、弹幕内容、创建弹幕的用户标识等。
94.(2)弹幕物料系统22,基于弹幕标识索引得到对应的弹幕物料的服务系统。
95.每个弹幕分配一个唯一的弹幕标识。通过弹幕标识索引得到的这条弹幕的全部信息即弹幕物料。
96.(3)弹幕分片系统24,弹幕分片系统用于执行如下操作:
97.①
从弹幕物料系统中获取视频的部分弹幕信息,如各个弹幕的弹幕标识和弹幕内容。
98.②
根据各个弹幕的弹幕内容进行排序(粗排序),以筛选出符合要求的弹幕。
99.所述弹幕粗排序,基于策略排除明显不符合质量要求的弹幕,如含有暴力的弹幕。需要说明的是,所述弹幕粗排序可以根据实时弹幕和离线弹幕同时进行筛选操作。
100.所述弹幕粗排序,可以对每个弹幕的弹幕内容进行打分,得到每个弹幕的初步排序分值。初步排序分值低则说明质量越低,如含有暴力的弹幕的初步排序分值较低。
101.③
以m秒的时间长度,对筛选出的弹幕的弹幕标识进行分片,形成多个弹幕分片。
102.例如,一个1分钟的视频,可以得到6个弹幕分片。该6个弹幕分片分别包括(0秒,10秒]期间所有弹幕的弹幕标识、(10秒,20秒]期间所有弹幕的弹幕标识、(20秒,30秒]期间所有弹幕的弹幕标识、(30秒,40秒]期间所有弹幕的弹幕标识、(40秒,50秒]期间所有弹幕的弹幕标识、(50秒,60秒]期间所有弹幕的弹幕标识。
103.为了不影响用户观看视频的体验,每个弹幕分片的弹幕标识数量的上限为n(如100个)。如某个时间段的弹幕的数量不断增加并最终大于n时,则执行替换操作:将最低排序分值对应的弹幕标识从相应的弹幕分片中移除,并将该新弹幕的弹幕标识加入该相应的弹幕分片中,从而保证这个时间段的视频片段所关联的弹幕的总数量被限定,提供商网络2服务压力可控,且实现对低质量的弹幕清除。这种替换机制,对点播视频在极大用户量和极大的弹幕存量情况下的兼容。
104.(4)精排序聚合服务系统26,弹幕分片系统用于执行如下操作:
105.①
响应于目标用户通过终端发送的请求,从所述弹幕分片系统中获取部分弹幕分片。
106.②
根据部分弹幕分片的各个弹幕标识,从所述弹幕物料系统中获取各个弹幕标识的弹幕信息。所述弹幕信息可以包括创建弹幕的用户标识、设备标识、用户年龄、喜好等。
107.③
基于所述目标用户的用户信息以及各个弹幕标识的弹幕信息,对各个弹幕标识进行排序(精排序)以得到排序结果。
108.所述精排序,为基于目标用户的特征、行为、设备形态对各个弹幕标识排序和筛选。
109.所述精排序的排序结果可以基于各个特征的权重之和得到,亦可以通过人工智能算法得到。
110.基于所述精排序聚合服务系统提供的目标弹幕标识,所述弹幕系统可以执行如下操作:基于所述排序结果和终端的实际情况(如屏幕尺寸、播放界面大小等),筛选出低于最大弹幕数量的目标弹幕标识,基于各个目标弹幕标识从弹幕物料系统中获取各个目标弹幕标识的弹幕信息,将各个目标弹幕标识的弹幕信息提供给终端,以便终端根据各个目标弹
幕标识的弹幕信息实现个性化的展示。
111.需要说明的是,发送至终端的各个目标弹幕标识的弹幕信息,是用于弹幕展示的必要信息。
112.需要说明的在,弹幕分片系统24和精排序聚合服务系统26可以同时工作,提高并发度。
113.(5)弹幕端管理服务系统28,用于管理对接web端、车载端app、客户端app的各类接口。
114.以下将通过多个实施例介绍弹幕推送方案。该方案可以通过提供商网络2实施。
115.实施例一
116.图3示意性示出了根据本技术实施例一的弹幕推送方法的流程图。
117.如图3所示,该弹幕推送方法可以包括步骤s300~s310,其中:
118.步骤s300,获取多个弹幕,并根据各个弹幕的发射时间,将所述多个弹幕分为多个弹幕分片。
119.该多个弹幕是不同用户在相同或不同时间观看同一个视频时发送的弹幕。
120.每个弹幕分别配置一个唯一的弹幕标识,该弹幕标识可以作为索引弹幕的依据。所述各个弹幕的发射时间,是指在视频播放进度中的被弹出到展示界面的时间点。
121.例如,100分钟的视频a对应6000个弹幕分片。该6000个弹幕分片如下:(0秒,10秒]期间所有弹幕的弹幕标识、(10秒,20秒]期间所有弹幕的弹幕标识、(20秒,30秒]期间所有弹幕的弹幕标识、(30秒,40秒]期间所有弹幕的弹幕标识、(40秒,50秒]期间所有弹幕的弹幕标识、

(5990秒,6000秒]期间所有弹幕的弹幕标识。
122.步骤s302,接收终端的请求,所述请求包括视频信息和用户标识。
123.所述请求可以基于播放页面的进入被触发生成,亦可以基于进度条的拖曳被触发生成。
124.所述视频信息可以包括视频标识、时间戳等。
125.步骤s304,根据所述视频信息,从所述多个弹幕分片中选择部分弹幕分片。
126.若该请求是基于播放页面的进入被触发生成,则该请求包括视频标识。基于该视频标识,获取与该视频标识关联的多个弹幕分片,并从中选择时间上最靠前的部分弹幕分片。例如:
127.①
终端提供视频app的视频选择界面,该视频选择界面有视频列表;
128.②
若终端检测到所述视频列表中的一个视频链接被点击,则触发进入视频播放页面(如视频a的视频播放页面),触发终端生成一个请求,并将这个请求发送至提供商网络2,以请求提供商网络2能够提供视频a的视频流和弹幕,所述请求中携带的主要参数是:用户标识、视频标识、设备标识、点击时间等。
129.③
提供商网络接收终端发送的这个请求之后,并响应如下:基于视频标识找到视频a的多个弹幕分片,并选择出部分弹幕分片,如:(0秒,360秒]的36个弹幕分片。
130.若所述请求基于进度条的拖曳被触发生成的,则该请求还可以携带有时间戳,通过时间戳表示视频的播放进度。然而以视频a为例,提供商网络2会找到视频a的多个弹幕分片,并根据所述时间戳从所述多个弹幕分片中找到部分弹幕分片。
131.步骤s306,根据所述用户标识,对所述部分弹幕分片对应的多个目标弹幕进行排
序以得到排序结果。
132.该排序结果是针对所述目标用户的个性化排序结果,排序实现流程如下:
133.可以根据所述用户标识从用户数据库中找到与所述用户标识对应的目标用户的用户信息,例如:性别、年龄、职业、兴趣、爱好等;根据这些用户信息对所述多个目标弹幕进行排序,以得到各个目标弹幕和所述目标用户的用户需求之间的契合度。所述排序可以通过训练好的人工智能模型实现,如通过回归模型计算各个目标弹幕的排序分值。弹幕的排序分值越大,则表示越符合目标用户的需求。
134.步骤s308,根据所述排序结果,从所述多个目标弹幕中选择多个待显示弹幕。
135.作为示例,可以将所述排序结果中的排序靠前的多个目标弹幕作为所述多个待显示弹幕。
136.步骤s310,将所述多个待显示弹幕推送至所述终端,以在所述终端进行弹幕展示。
137.所述终端根据各个待显示弹幕的发射时间、弹幕内容和其他弹幕参数进行弹幕展示。
138.本技术实施例提供的弹幕推送方法,有以下优点:
139.(1)选择出部分弹幕分片并将其对应的各个目标弹幕进行排序,以选择出符合目标用户的个性化的待显示弹幕,一定程度上减少了弹幕展示数量。即,降低了弹幕密度,一定程度上避免了整个屏幕被弹幕占满的情况,提高了目标用户观看视频的体验。
140.(2)选择出目标用户的个性化的待显示弹幕,满足目标用户精准的个性化需求,提高用户体验。
141.(3)对视频的多个弹幕进行逻辑划分为多个弹幕分片,具有以下优点:
142.根据目标用户的需求,以弹幕分片为单位,分批向目标用户提供弹幕,降低了带宽消耗;
143.根据目标用户的需求,以弹幕分片为单位,选择部分弹幕分片并将其对应的各个目标弹幕进行排序,而非将视频的所有弹幕进行排序,降低了提供商网络2的服务压力,也避免了在目标用户拖曳进度条或中途退出的情形下,进行全部弹幕排序的运算资源的浪费,从而可以同时支撑在亿级别用户的弹幕个性化服务能力。
144.作为示例,如图4所示,步骤s300所述的获取多个弹幕,可以通过如下步骤实现:步骤s400,获取多个初始弹幕,所述多个初始弹幕包括离线弹幕和实时弹幕;步骤s402,根据各个初始弹幕的弹幕内容,对所述各个初始弹幕进行初步排序;及步骤s404,根据所述初步排序得到的初步排序结果,从所述多个初始弹幕中筛选出所述多个弹幕。在本实施例中,所述初步排序可以采用弹幕粗排序的方式进行,即基于策略排除明显不符合质量要求的弹幕,如含有暴力的弹幕,优化弹幕质量和少数弹幕数量,在一定程序上减轻提供商网络的存储和后续处理压力。
145.作为示例,每个弹幕分片被配置有限制弹幕数量的预设数量,所述初步排序结果包括各个弹幕的初步排序分值。如图5所示,所述弹幕推送方法还可以包括更新各个弹幕分片的操作,具体步骤如下:步骤s500,若接收到新弹幕,则根据所述新弹幕的发射时间确定所述新弹幕对应的待更新弹幕分片;步骤s502,计算所述新弹幕的初步排序分值;及步骤s504,若所述待更新弹幕分片对应的弹幕数量达到所述预设数量,则根据所述新弹幕的初步排序分值和所述待更新弹幕分片的各个弹幕的初步排序分值,确定待替换弹幕,从所述
待更新弹幕分片移除所述待替换弹幕并将所述新弹幕替换到所述待更新弹幕分片,其中所述待替换弹幕的初步排序分值低于所述新弹幕的初步排序分值。在本实施例中,每个弹幕分片的弹幕标识数量的上限为n(如100个)。如某个时间段的弹幕的数量不断增加并最终大于n时,则执行替换操作:将最低排序分值对应的弹幕标识从相应的弹幕分片中移除,并将该新弹幕的弹幕标识加入该相应的弹幕分片中,从而保证这个时间段的视频片段所关联的弹幕的总数量被限定。通过本实施例的弹幕替换机制,可以由以下优势:提供商网络2服务压力可控,实现对低质量的弹幕清除,并实现对点播视频在极大用户量和极大的弹幕存量情况下的兼容。
146.需要说明的是,如果有若干个弹幕的初步排序分值均低于该新弹幕的初步排序分值,则优先将所述若干个弹幕中初步排序值最低的那个弹幕作为所述待替换弹幕。
147.作为示例,如图6所示,步骤s306可以通过如下步骤实现:步骤s600,根据所述用户标识,获取目标用户的用户信息;步骤s602,获取各个目标弹幕的弹幕信息;及步骤s604,根据所述用户信息和所述各个目标弹幕的弹幕信息,对所述各个目标弹幕进行排序以得到所述排序结果。在本实施例中,可以对所述用户信息(如,所述目标用户的性别、年龄、职业、兴趣、爱好等)和所述各个目标弹幕的弹幕信息(如,弹幕发送者信息、弹幕内容、弹幕样式等)进行向量化操作,得到多维特征向量,并基于该多维特征向量输入到预先训练好的模型中,以得到针对所述目标用户的个性化的排序结果。需要说明的是,本技术实施例亦可以通过其他方式对所述各个目标弹幕进行排序,本技术实施例不做限定。
148.作为示例,所述请求还包括所述终端的设备信息和/或播放器信息。如图7所示,步骤s308可以通过如下步骤实现:步骤s700,根据所述设备信息和/或播放器信息,确定最大弹幕数量;及步骤s702,根据所述排序结果和所述最大弹幕数量,从所述多个目标弹幕中选择所述多个待显示弹幕;其中,所述多个待显示弹幕的弹幕数量不大于所述最大弹幕数量。在本实施例中,设备信息可以包括客户端类型(如web端、客户端、pc端、车载端等),不同客户端类型对应的最大弹幕数量不同。播放器信息可以包括播放窗口大小(如全屏、半屏、画中画)、播放场景等,不同的播放窗口大小和播放场景对应不同的最大弹幕数量。示例性的,web端和车载端可以设置较大的最大弹幕数量。客户端设置较小的最大弹幕数量。通过所述终端的上述实际情况设置不同的最大弹幕数量,可以进一步优化用户观看视频的体验,在观看弹幕和观看视频间取得平衡。
149.实施例二
150.图8示意性示出了根据本技术实施例二的弹幕推送装置的框图,该弹幕推送装置可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本技术实施例。本技术实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本技术实施例中各程序模块的功能。
151.如图8所示,该弹幕推送装置800可以包括分片模块810、接收模块820、第一选择模块830、排序模块840、第二选择模块850,以及推送模块860,其中:
152.分片模块810,用于获取多个弹幕,并根据各个弹幕的发射时间,将所述多个弹幕分为多个弹幕分片;
153.接收模块820,用于接收终端的请求,所述请求包括视频信息和用户标识;
154.第一选择模块830,用于根据所述视频信息,从所述多个弹幕分片中选择部分弹幕分片;
155.排序模块840,用于根据所述用户标识,对所述部分弹幕分片对应的多个目标弹幕进行排序以得到排序结果;
156.第二选择模块850,用于根据所述排序结果,从所述多个目标弹幕中选择多个待显示弹幕;及
157.推送模块860,用于将所述多个待显示弹幕推送至所述终端,以在所述终端进行弹幕展示。
158.作为示例,所述分片模块810还用于:
159.获取多个初始弹幕,所述多个初始弹幕包括离线弹幕和实时弹幕;
160.根据各个初始弹幕的弹幕内容,对所述各个初始弹幕进行初步排序;及
161.根据所述初步排序得到的初步排序结果,从所述多个初始弹幕中筛选出所述多个弹幕。
162.作为示例,每个弹幕分片被配置有限制弹幕数量的预设数量,所述初步排序结果包括各个弹幕的初步排序分值;作为示例,所述弹幕推送装置还包括更新模块(未图示),用于:
163.所述方法还包括更新各个弹幕分片:
164.若接收到新弹幕,则根据所述新弹幕的发射时间确定所述新弹幕对应的待更新弹幕分片;
165.计算所述新弹幕的初步排序分值;及
166.若所述待更新弹幕分片对应的弹幕数量达到所述预设数量,则根据所述新弹幕的初步排序分值和所述待更新弹幕分片的各个弹幕的初步排序分值,确定待替换弹幕,从所述待更新弹幕分片移除所述待替换弹幕并将所述新弹幕替换到所述待更新弹幕分片,其中所述待替换弹幕的初步排序分值低于所述新弹幕的初步排序分值。
167.作为示例,所述排序模块840还用于:
168.根据所述用户标识,获取目标用户的用户信息;
169.获取各个目标弹幕的弹幕信息;及
170.根据所述用户信息和所述各个目标弹幕的弹幕信息,对所述各个目标弹幕进行排序以得到所述排序结果。
171.作为示例,所述请求还包括所述终端的设备信息和/或播放器信息;所述第二选择模块850还用于:
172.根据所述设备信息和/或播放器信息,确定最大弹幕数量;及
173.根据所述排序结果和所述最大弹幕数量,从所述多个目标弹幕中选择所述多个待显示弹幕;其中,所述多个待显示弹幕的弹幕数量不大于所述最大弹幕数量。
174.实施例三
175.图9示意性示出了根据本技术实施例三的适于实现弹幕推送方法的计算机设备10000的硬件架构示意图。本实施例中,计算机设备10000可以是提供商网络2或作为提供商网络2的一部分。计算机设备10000是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是机架式服务器、刀片式服务器、塔式服务器或机
柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图9所示,计算机设备10000至少包括但不限于:可通过系统总线相互通信链接存储器10010、处理器10020、网络接口10030。其中:
176.存储器10010至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器10010可以是计算机设备10000的内部存储模块,例如该计算机设备10000的硬盘或内存。在另一些实施例中,存储器10010也可以是计算机设备10000的外部存储设备,例如该计算机设备10000上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,存储器10010还可以既包括计算机设备10000的内部存储模块也包括其外部存储设备。本实施例中,存储器10010通常用于存储安装于计算机设备10000的操作系统和各类应用软件,例如弹幕推送方法的程序代码等。此外,存储器10010还可以用于暂时地存储已经输出或者将要输出的各类数据。
177.处理器10020在一些实施例中可以是中央处理器(central processing unit,简称为cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器10020通常用于控制计算机设备10000的总体操作,例如执行与计算机设备10000进行数据交互或者通信相关的控制和处理等。本实施例中,处理器10020用于运行存储器10010中存储的程序代码或者处理数据。
178.网络接口10030可包括无线网络接口或有线网络接口,该网络接口10030通常用于在计算机设备10000与其他计算机设备之间建立通信链接。例如,网络接口10030用于通过网络将计算机设备10000与外部终端相连,在计算机设备10000与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(global system of mobile communication,简称为gsm)、宽带码分多址(w标识eband code division multiple access,简称为wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。
179.需要指出的是,图9仅示出了具有部件10010-10030的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
180.在本实施例中,存储于存储器10010中的弹幕推送方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器10020)所执行,以完成本技术实施例。
181.实施例四
182.本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的弹幕推送方法的步骤。
183.本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外
部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中弹幕推送方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
184.实施例五
185.本技术实施例还提供一种弹幕系统,其具体细节可以参照上文内容,在此不赘述。
186.如图2所示,所述弹幕系统包括:
187.弹幕物料系统22,用于基于弹幕标识索引得到对应的弹幕信息;
188.弹幕分片系统24,用于:根据多个弹幕中的各个弹幕的发射时间,对所述多个弹幕的弹幕标识进行分片以得到多个弹幕分片,每个弹幕分片包括同一时间分片的弹幕标识;及
189.精排序聚合服务系统26,用于:响应于目标用户通过终端发送的请求,从所述弹幕分片系统中获取部分弹幕分片;根据所述部分弹幕分片中的各个弹幕标识,从所述弹幕物料系统中获取所述各个弹幕标识的弹幕信息;基于目标用户的用户信息和所述各个弹幕标识的弹幕信息,对所述各个弹幕标识进行排序,以根据排序结果从所述部分弹幕分片选择多个目标弹幕标识,从所述弹幕物料系统中获取各个目标弹幕标识的弹幕信息,并推送各个目标弹幕标识的弹幕信息到所述终端。
190.作为示例,弹幕分片系统24,还用于:从所述弹幕物料系统中获取视频的各个初始弹幕的部分弹幕信息;及根据所述各个初始弹幕的部分弹幕信息筛选出所述多个弹幕的弹幕标识。
191.显然,本领域的技术人员应该明白,上述的本技术实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本技术实施例不限制于任何特定的硬件和软件结合。
192.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献