CN114173198A - 弹幕渲染方法及装置、存储介质及电子设备 - Google Patents
弹幕渲染方法及装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN114173198A CN114173198A CN202111491951.XA CN202111491951A CN114173198A CN 114173198 A CN114173198 A CN 114173198A CN 202111491951 A CN202111491951 A CN 202111491951A CN 114173198 A CN114173198 A CN 114173198A
- Authority
- CN
- China
- Prior art keywords
- bullet screen
- rendering
- barrage
- bullet
- determining
- 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.)
- Granted
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 232
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012163 sequencing technique Methods 0.000 claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims description 17
- 238000011156 evaluation Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive 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/454—Content or additional data filtering, e.g. blocking advertisements
- H04N21/4545—Input to filtering algorithms, e.g. filtering a region of the image
-
- 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/488—Data services, e.g. news ticker
- H04N21/4884—Data services, e.g. news ticker for displaying subtitles
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供一种弹幕渲染方法及装置、存储介质及电子设备,该方法包括:确定视频的当前弹幕渲染时间点;确定与当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;获取与时间区间对应的各个弹幕;基于各个弹幕的弹幕信息,确定每个弹幕的渲染分数;基于各个渲染分数,对各个弹幕进行排序,得到弹幕序列;基于弹幕渲染信息,确定弹幕渲染数量;基于弹幕渲染数量,在弹幕序列的各个弹幕中确定目标弹幕,并将每个目标弹幕在终端的显示页面进行渲染。本发明通过每条弹幕的渲染分数对弹幕进行筛选,从而得到进行渲染的目标弹幕,通过使用渲染分数对弹幕进行筛选,从中筛选出内容好、质量高的弹幕,为用户渲染高质量的弹幕,提高用户的使用体验。
Description
技术领域
本发明涉及弹幕渲染技术领域,特别涉及一种弹幕渲染方法及装置、存储介质及电子设备。
背景技术
随着计算机技术的发展,各种具有不同功能的娱乐软件遍布在我们的日常生活中,其中,有些娱乐软件为了提高与用户之间的互动,通常会增加弹幕功能,具体如直播软件、视频软件等。
为了展示弹幕的完整性,要求弹幕在显示时不能相互遮挡,但受限于显示屏幕的大小,如果大量弹幕在同一时间区域展示时,会遇到待显示弹幕过多而需要丢弃部分弹幕的情况。目前在渲染弹幕时,需要对弹幕进行碰撞处理,在显示区域已满的情况下,则将弹幕丢弃,在显示区域未满的情况下,可显示弹幕。目前丢弃弹幕的方式无法对弹幕进行合理性的筛选,极易将高质量的弹幕丢弃,导致展示的弹幕质量不高,降低客户的使用体验。
发明内容
有鉴于此,本发明提供一种弹幕渲染方法及装置、存储介质及电子设备,可以合理的丢弃弹幕,向用户渲染高质量的弹幕,提高用户的使用体验。
为实现上述目的,本发明实施例提供如下技术方案:
本发明第一方面公开一种弹幕渲染方法,包括:
确定视频的当前弹幕渲染时间点;
确定与所述当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;
获取与所述时间区间对应的各个弹幕;
基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数;
基于各个所述渲染分数,对各个所述弹幕进行排序,得到弹幕序列;
基于所述弹幕渲染信息,确定弹幕渲染数量,所述弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数;
基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,并将每个所述目标弹幕在所述终端的显示页面进行渲染。
上述的方法,可选的,所述获取与所述时间区间对应的各个弹幕,包括:
获取所述视频的各个视频弹幕,并确定每条所述视频弹幕的上传时间戳;
将上传时间戳位于所述时间区间中的每个视频弹幕均确定为与所述时间区间对应的弹幕。
上述的方法,可选的,所述基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数,包括:
对每个所述弹幕的弹幕信息进行解析,获取每个所述弹幕的上传用户信息以及弹幕内容数据;
基于每个所述弹幕的上传用户信息,确定每个所述弹幕的优先数值;
对每个所述弹幕的弹幕内容数据进行不相似评估,得到每个所述弹幕的不相似分数;
根据每个所述弹幕的不相似分数和优先数值,得到每个所述弹幕的渲染分数。
上述的方法,可选的,所述基于所述弹幕渲染信息,确定弹幕渲染数量,包括:
获取所述弹幕渲染信息中的各项分析参数,各项分析参数包括弹幕轨道的数量、每条弹幕轨道的弹幕移动速度以及每条弹幕轨道当前的弹幕显示信息;
基于各项所述分析参数对所述终端的显示页面进行分析,确定所述终端的显示页面在所述当前弹幕渲染时间点可展示的弹幕数量,并将该弹幕数量确定为弹幕渲染数量。
上述的方法,可选的,所述基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,包括:
判断所述弹幕序列中的弹幕个数是否小于或等于所述弹幕渲染数量;
若确定所述弹幕序列中的弹幕个数小于或等于所述弹幕渲染数量,则将所述弹幕序列中的各个弹幕均确定为目标弹幕;
若确定所述弹幕序列中的弹幕个数大于所述弹幕渲染数量,则按照弹幕排序的先后顺序,在所述弹幕序列中逐一选择弹幕,直至选择的弹幕个数等于所述弹幕渲染数量时,将选择的各个弹幕均确定为目标弹幕。
本发明第二方面公开一种弹幕渲染装置,包括:
第一确定单元,用于确定视频的当前弹幕渲染时间点;
第二确定单元,用于确定与所述当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;
获取单元,用于获取与所述时间区间对应的各个弹幕;
第三确定单元,用于基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数;
排序单元,用于基于各个所述渲染分数,对各个所述弹幕进行排序,得到弹幕序列;
第四确定单元,用于基于所述弹幕渲染信息,确定弹幕渲染数量,所述弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数;
渲染单元,用于基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,并将每个所述目标弹幕在所述终端的显示页面进行渲染。
上述的装置,可选的,所述获取单元,包括:
第一获取子单元,用于获取所述视频的各个视频弹幕,并确定每条所述视频弹幕的上传时间戳;
第一确定子单元,用于将上传时间戳位于所述时间区间中的每个视频弹幕均确定为与所述时间区间对应的弹幕。
上述的装置,可选的,所述第三确定单元,包括:
第二获取子单元,用于对每个所述弹幕的弹幕信息进行解析,获取每个所述弹幕的上传用户信息以及弹幕内容数据;
第二确定子单元,用于基于每个所述弹幕的上传用户信息,确定每个所述弹幕的优先数值;
评估子单元,用于对每个所述弹幕的弹幕内容数据进行不相似评估,得到每个所述弹幕的不相似分数;
获得子单元,用于根据每个所述弹幕的不相似分数和优先数值,得到每个所述弹幕的渲染分数。
上述的装置,可选的,所述第四确定单元,包括:
第三获取子单元,用于获取所述弹幕渲染信息中的各项分析参数,各项分析参数包括弹幕轨道的数量、每条弹幕轨道的弹幕移动速度以及每条弹幕轨道当前的弹幕显示信息;
分析子单元,用于基于各项所述分析参数对所述终端的显示页面进行分析,确定所述终端的显示页面在所述当前弹幕渲染时间点可展示的弹幕数量,并将该弹幕数量确定为弹幕渲染数量。
上述的装置,可选的,所述渲染单元,包括:
判断子单元,用于判断所述弹幕序列中的弹幕个数是否小于或等于所述弹幕渲染数量;
第三确定子单元,用于若确定所述弹幕序列中的弹幕个数小于或等于所述弹幕渲染数量,则将所述弹幕序列中的各个弹幕均确定为目标弹幕;
第四确定子单元,用于若确定所述弹幕序列中的弹幕个数大于所述弹幕渲染数量,则按照弹幕排序的先后顺序,在所述弹幕序列中逐一选择弹幕,直至选择的弹幕个数等于所述弹幕渲染数量时,将选择的各个弹幕均确定为目标弹幕。
本发明第三方面公开一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如上所述的弹幕渲染方法。
本发明第四方面公开一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如上所述的弹幕渲染方法。
与现有技术相比,本发明具有以下优点:
本发明提供一种弹幕渲染方法及装置、存储介质及电子设备,该方法包括:确定视频的当前弹幕渲染时间点;确定与当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;获取与时间区间对应的各个弹幕;基于各个弹幕的弹幕信息,确定每个弹幕的渲染分数;基于各个渲染分数,对各个所述弹幕进行排序,得到弹幕序列;基于弹幕渲染信息,确定弹幕渲染数量,弹幕渲染数量为播放所述视频的终端在当前弹幕渲染时间点可渲染的弹幕条数;基于弹幕渲染数量,在弹幕序列的各个弹幕中确定目标弹幕,并将每个目标弹幕在终端的显示页面进行渲染。本发明通过确定出每条弹幕的渲染分数,根据渲染分数对弹幕进行筛选,从而得到进行渲染的目标弹幕,通过使用渲染分数对弹幕进行筛选,从中筛选出内容好、质量高的弹幕,为用户渲染高质量的弹幕,提高用户的使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种弹幕渲染方法的方法流程图;
图2为本发明实施例提供的一种确定与时间区间对应的弹幕的方法流程图;
图3为本发明实施例提供的一种确定每个弹幕的渲染分数的方法流程图;
图4为本发明实施例提供的一种弹幕渲染方法的场景示例图;
图5为本发明实施例提供的一种确定目标弹幕的方法流程图;
图6为本发明实施例提供的一种弹幕渲染装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
由背景技术可知,目前渲染弹幕时,在出现需要丢弃弹幕时,是随机丢弃弹幕的,随机丢弃弹幕的方式不能对弹幕进行合理的筛选,容易出现将内容好的弹幕丢弃掉,导致渲染的弹幕的质量不佳,降低用户的使用体验。
视频播放时要求弹幕不能相互遮挡,但受制于显示屏幕大小,如果大量弹幕在同一时间区域展示时,一定会遇到待显示弹幕过多而需要丢弃部分弹幕的情况;目前常规做法是遍历当前需要展示的所有弹幕,做弹幕碰撞检测,如果发现当前可显示区域都是满的则丢弃改条,简称随机丢弃;本发明提供了一种更合理的丢弃算法,能够做到在需要丢弃时能尽量保留合理的弹幕,提高弹幕质量和互动体验。
为了解决上述问题,本发明提供一种弹幕渲染方法,该方法可以用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。该方法的执行主体可以为计算机终端的处理器或服务器。
参照图1,为本发明实施例提供的一种弹幕渲染方法的方法流程图,具体说明如下所述:
S101、确定视频的当前弹幕渲染时间点。
用户使用可播放视频的终端播放视频时,可以在终端的显示界面渲染与该视频相关的弹幕。
每个视频都有多个弹幕渲染时间点,确定视频的弹幕渲染时间点的方式有多种,其中一种可以按照预先设置的时间长度周期性的确定,例如,以2秒为一个周期,则视频的第2秒,第4秒,第6秒等都可以确定为弹幕渲染时间点。
视频在播放的过程中,实时确定弹幕渲染时间点,并将当前确定到的弹幕渲染时间点作为当前渲染时间点,从而进行弹幕渲染流程。进一步的,当前渲染时间点为视频中的视频时间点。
S102、确定与当前弹幕渲染时间点对应的时间区间和弹幕渲染信息。
在确定时间区间时,可以将当前弹幕渲染时间点作为时间区间中的最大值,将位于当前弹幕渲染时间点前且与当前弹幕渲染时间点相距预设的第一时间步长的视频时间点作为时间区间中的最小值,示例性的,时间步长为1秒,当前弹幕渲染时间点为视频中的第4秒,则时间区间为第3秒至第4秒。
可选的,还可以将当前弹幕渲染时间点作为时间区间中的最小值,将位于当前弹幕渲染时间点后且与当前弹幕渲染时间点相距预设的第二时间步长的视频时间点作为时间区间中的最大值。
可选的,时间区间还可以由与当前弹幕渲染时间点相隔预设的第二时间步长的两个视频时间点组成,示例性的,第二时间步长为1秒,当前弹幕渲染时间点为视频中的第4秒,则时间区间为第3秒至第5秒。
本发明实施例提供的弹幕渲染信息中包含但不限于用户设置的弹幕轨道的个数、弹幕轨道的字体大小、弹幕轨道中弹幕滑动的速度以及当前终端中各个弹幕轨道的渲染的弹幕的信息等数据。
S103、获取与时间区间对应的各个弹幕。
参照图2,为本发明实施例提供的确定与时间区间对应的各个弹幕的方法流程图,具体说明如下所述:
S201、获取视频的各个视频弹幕,并确定每条视频弹幕的上传时间戳。
获取该视频的当前的各个视频弹幕,视频弹幕中包括正在播放该视频的用户当前发布的弹幕,也包含该视频的历史弹幕。
每条视频弹幕都存在对应的上传时间戳,上传时间戳即为用户上传该视频弹幕时该视频的时间点,示例性的,用户观看该视频时,观看到第540秒时上传了一条视频弹幕,则该视频弹幕的时间戳即为540秒。
S202、将上传时间戳位于时间区间中的每个视频弹幕均确定为与时间区间对应的弹幕。
将上传时间戳属于该时间区间的各个视频弹幕均确定为与时间区间对应的弹幕。
示例性的,时间区间为300秒至302秒,则当上传时间戳为301秒时,可确定该上传时间戳所属的视频弹幕与该时间区间对应的弹幕。
S104、基于各个弹幕的弹幕信息,确定每个弹幕的渲染分数。
参照图3,为本发明实施例提供的确定每个弹幕的渲染分数的方法流程图,具体说明如下所述:
S301、对每个弹幕的弹幕信息进行解析,获取每个弹幕的上传用户信息以及弹幕内容数据。
上传用户信息包含但不限于上传该弹幕的用户账号信息,示例性的,例如账号是否为VIP账号、是否为明星账号、是否为当前观看这个视频的用户的账号等信息。
弹幕内容数据可以为弹幕的文本内容。
S302、基于每个弹幕的上传用户信息,确定每个弹幕的优先数值。
可以根据弹幕的上传用户信息,确定各项计算参数,示例性的,可以使用参数Z表示该弹幕是否为正在观看视频的用户上传的弹幕,其中,Z取0时,表示该弹幕不为正在观看视频的用户上传的弹幕,Z取1时,表示该弹幕为正在观看视频的用户上传的弹幕;可以使用M表示该弹幕是否为明星上传的弹幕,M取0时,表示该弹幕不为明星上传的弹幕,M去1时,表示该弹幕为明星上传的弹幕;可以使用V表示VIP用户发送的弹幕,使用N表示非VIP发送的弹幕,当V取0时,N取1;当V取1时,N取0;当弹幕不为VIP用户发送的弹幕时,V取0,N取1;当弹幕为VIP发送的弹幕时,V取1,N取0。
上述的V、M、N、Z均为计算参数,根据弹幕的上传用户信息,确定出V、M、N、Z的取值,并将V、M、N、Z的取值代入预设的计算公式中,计算出弹幕的优先数值,计算公式的表达式为:piro=a*Z+b*M+c*V+d*N,piro表示优先数值,a、b、c、d均为预先设置的常数,c+d=1,示例性的,a=1,b=1,c=0.6,d=0.4。
需要说明的是,VIP用户、明星以及正在观看视频的用户本人发送的弹幕被丢弃的概率会小一点。
S303、对每个弹幕的弹幕内容数据进行不相似评估,得到每个弹幕的不相似分数。
对于每个弹幕,可以使用word2vec算法算出该弹幕相对于其他弹幕的相似分数,再将相似分数进行映射,得到该弹幕相对于其他弹幕的不相似分数;不相似分数越高,表示该弹幕与其他弹幕的内容越不相似,该弹幕的质量越高,该弹幕被丢弃的可能性越低;不相似分数越低,表示该弹幕与其他弹幕的内容越相似,该弹幕的质量越低,该弹幕被丢弃的可能性越高。
上述中的其他弹幕可以是与时间区间对应的各个弹幕中除了该弹幕之外的所有弹幕,还可以是该视频的各个弹幕中除了该弹幕之外的所有弹幕。
在使用word2vec算法算出该弹幕相对于其他弹幕的相似分数时,可以先使用word2vec算法算出该弹幕与其他每个弹幕之间的相似度向量,再根据各个相似度向量计算得到该弹幕的相似分数。
S304、根据每个弹幕的不相似分数和优先数值,得到每个弹幕的渲染分数。
优选的,对于每个弹幕,可以将弹幕的不相似分数和优先数值相加,即可得到弹幕的渲染分数。
需要说明的是,渲染分数越高,弹幕被丢弃的概率越小,渲染分数越低,弹幕被丢弃的概率约大。
S105、基于各个渲染分数,对各个弹幕进行排序,得到弹幕序列。
在对各个弹幕进行排序时,先根据渲染分数从大到小的顺序将各个弹幕进行排序,即渲染分数越大的弹幕越靠前,渲染分数越小的弹幕越靠后;在对各个弹幕进行排序的过程中,当存在渲染分数一样的弹幕情况时,则根据弹幕的上传时间戳进行排序,将上传时间戳越早的弹幕排在前面,示例性的,弹幕可以这种形式表示:弹幕[渲染分数,上传时间戳],假设存在5条弹幕,分别为弹幕A[1.2,55秒],弹幕B[1.2,54秒],弹幕C[1,50秒],弹幕D[1.3,56秒],弹幕E[0.8,55秒],将弹幕A~弹幕E进行排序,可以得到这样的弹幕序列:弹幕D,弹幕B,弹幕A,弹幕C,弹幕E。
S106、基于弹幕渲染信息,确定弹幕渲染数量。
需要说明的是,弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数。
获取所述弹幕渲染信息中的各项分析参数;
基于各项所述分析参数对所述终端的显示页面进行分析,确定所述终端的显示页面在所述当前弹幕渲染时间点可展示的弹幕数量,并将该弹幕数量确定为弹幕渲染数量。
各项分析参数包括但不限于弹幕轨道的数量、每条弹幕轨道的弹幕移动速度以及每条弹幕轨道当前的弹幕显示信息等。进一步的,弹幕轨道的数量以及弹幕轨道中弹幕的移动速度用户是可以根据需求进行设置的。
参照图4,为本发明实施例提供的一种场景示例图,用于对弹幕轨道进行说明,如图所示,图中的显示页面中包含一条弹幕轨道,该弹幕轨道中已经渲染了一条弹幕,即弹幕1,弹幕2为等待渲染的弹幕。
弹幕渲染数量为在当前弹幕渲染时间点终端的显示页面最多可以增加渲染的弹幕的数量。
S107、基于弹幕渲染数量,在弹幕序列的各个弹幕中确定目标弹幕,并将每个目标弹幕在终端的显示页面进行渲染。
参照图5,为本发明实施例提供的在弹幕序列的各个弹幕中确定目标弹幕的方法流程图,具体说明如下所述:
S401、判断弹幕序列中的弹幕个数是否小于或等于弹幕渲染数量;若确定所述弹幕序列中的弹幕个数小于或等于所述弹幕渲染数量,则执行S402;若确定所述弹幕序列中的弹幕个数大于所述弹幕渲染数量,则执行S403。
S402、将弹幕序列中的各个弹幕均确定为目标弹幕。
S403、按照弹幕排序的先后顺序,在弹幕序列中逐一选择弹幕,直至选择的弹幕个数等于弹幕渲染数量时,将选择的各个弹幕均确定为目标弹幕。
本发明实施例提供的方法中,当弹幕序列中的弹幕个数小于弹幕渲染数量时,将弹幕序列中所有的弹幕均确定为目标弹幕;当弹幕序列中的弹幕个数多于弹幕渲染数量时,需要从弹幕序列中选择目标弹幕,按照从前到后的顺序,从弹幕序列中选出个数与弹幕渲染数量相同的弹幕,并将选出的各个弹幕均确定为目标弹幕;示例性的,弹幕渲染数量为4时,将弹幕序列中的前4个弹幕确定为目标弹幕,将弹幕序列中剩余的各个弹幕丢弃。
本发明实施提供的方法中,确定视频的当前弹幕渲染时间点;确定与当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;获取与时间区间对应的各个弹幕;基于各个弹幕的弹幕信息,确定每个弹幕的渲染分数;基于各个渲染分数,对各个所述弹幕进行排序,得到弹幕序列;基于弹幕渲染信息,确定弹幕渲染数量,弹幕渲染数量为播放所述视频的终端在当前弹幕渲染时间点可渲染的弹幕条数;基于弹幕渲染数量,在弹幕序列的各个弹幕中确定目标弹幕,并将每个目标弹幕在终端的显示页面进行渲染。本发明通过确定出每条弹幕的渲染分数,根据渲染分数对弹幕进行筛选,从而得到进行渲染的目标弹幕,通过使用渲染分数对弹幕进行筛选,从中筛选出内容好、质量高的弹幕,为用户渲染高质量的弹幕,提高用户的使用体验。
本发明实施提供的弹幕渲染方法,对于不同类的弹幕,存在不同的显示级别;显示优先级的算法与弹幕类别(例如:自己发的弹幕和明星弹幕),用户状态(例如:VIP用户,不同VIP级别用户和普通用户)相关,这样能保证某些特殊场景或是特殊业务类弹幕可以优先显示,也能保证不同账号级别享受不同权益;弹幕优先级的算法还与当前弹幕与整体视频弹幕库相似度有关,相似度越小的,丢弃概率越小,这样能保证个性化弹幕与人云亦云类弹幕区别对待;弹幕优先级的算法,也与弹幕发送时间点相关,这样可以公平解决弹幕类别,用户状态和发送内容相同时,发送早的人优先展示机会。本发明的弹幕渲染方法从多个角度、多个维度进行考虑,从而可以筛选出高质量、合理性更强的弹幕进行渲染,从而提高用户的使用体验。
与图1所示的方法相对应的,本发明实施例还提供一种弹幕渲染装置,用于支持图1所示的方法在现实生活中的应用,该装置可以设置于具有播放视频功能的设备中。
参照图6,为本发明实施例提供的一种弹幕渲染装置的结构示意图,具体说明如下所述:
第一确定单元601,用于确定视频的当前弹幕渲染时间点;
第二确定单元602,用于确定与所述当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;
获取单元603,用于获取与所述时间区间对应的各个弹幕;
第三确定单元604,用于基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数;
排序单元605,用于基于各个渲染分数,对各个所述弹幕进行排序,得到弹幕序列;
第四确定单元606,用于基于所述弹幕渲染信息,确定弹幕渲染数量,所述弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数;
渲染单元607,用于基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,并将每个所述目标弹幕在所述终端的显示页面进行渲染。
本发明实施提供的装置中,确定视频的当前弹幕渲染时间点;确定与当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;获取与时间区间对应的各个弹幕;基于各个弹幕的弹幕信息,确定每个弹幕的渲染分数;基于各个渲染分数,对各个所述弹幕进行排序,得到弹幕序列;基于弹幕渲染信息,确定弹幕渲染数量,弹幕渲染数量为播放所述视频的终端在当前弹幕渲染时间点可渲染的弹幕条数;基于弹幕渲染数量,在弹幕序列的各个弹幕中确定目标弹幕,并将每个目标弹幕在终端的显示页面进行渲染。本发明通过确定出每条弹幕的渲染分数,根据渲染分数对弹幕进行筛选,从而得到进行渲染的目标弹幕,通过使用渲染分数对弹幕进行筛选,从中筛选出内容好、质量高的弹幕,为用户渲染高质量的弹幕,提高用户的使用体验。
本发明实施例提供的装置中,所述获取单元603,可以配置为:
第一获取子单元,用于获取所述视频的各个视频弹幕,并确定每条所述视频弹幕的上传时间戳;
第一确定子单元,用于将上传时间戳位于所述时间区间中的每个视频弹幕均确定为与所述时间区间对应的弹幕。
本发明实施例提供的装置中,所述第三确定单元604,可以配置为:
第二获取子单元,用于对每个所述弹幕的弹幕信息进行解析,获取每个所述弹幕的上传用户信息以及弹幕内容数据;
第二确定子单元,用于基于每个所述弹幕的上传用户信息,确定每个所述弹幕的优先数值;
评估子单元,用于对每个所述弹幕的弹幕内容数据进行不相似评估,得到每个所述弹幕的不相似分数;
获得子单元,用于根据每个所述弹幕的不相似分数和优先数值,得到每个所述弹幕的渲染分数。
本发明实施例提供的装置中,所述第四确定单元606,可以配置为:
第三获取子单元,用于获取所述弹幕渲染信息中的各项分析参数,各项分析参数包括弹幕轨道的数量、每条弹幕轨道的弹幕移动速度、每条弹幕轨道当前的弹幕显示信息;
分析子单元,用于基于各项所述分析参数对所述终端的显示页面进行分析,确定所述终端的显示页面在所述当前弹幕渲染时间点可展示的弹幕数量,并将该弹幕数量确定为弹幕渲染数量。
本发明实施例提供的装置中,所述渲染单元607,可以配置为:
判断子单元,用于判断所述弹幕序列中的弹幕个数是否小于或等于所述弹幕渲染数量;
第三确定子单元,用于若确定所述弹幕序列中的弹幕个数小于或等于所述弹幕渲染数量,则将所述弹幕序列中的各个弹幕均确定为目标弹幕;
第四确定子单元,用于若确定所述弹幕序列中的弹幕个数大于所述弹幕渲染数量,则按照弹幕排序的先后顺序,在所述弹幕序列中逐一选择弹幕,直至选择的弹幕个数等于所述弹幕渲染数量时,将选择的各个弹幕均确定为目标弹幕。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述弹幕渲染方法。
本发明实施例还提供了一种电子设备,其结构示意图如图7所示,具体包括存储器701,以及一个或者一个以上的指令702,其中一个或者一个以上指令702存储于存储器701中,且经配置以由一个或者一个以上处理器703执行所述一个或者一个以上指令702执行上述弹幕渲染方法。
上述各个实施例的具体实施过程及其衍生方式,均在本发明的保护范围之内。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种弹幕渲染方法,其特征在于,包括:
确定视频的当前弹幕渲染时间点;
确定与所述当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;
获取与所述时间区间对应的各个弹幕;
基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数;
基于各个所述渲染分数,对各个所述弹幕进行排序,得到弹幕序列;
基于所述弹幕渲染信息,确定弹幕渲染数量,所述弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数;
基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,并将每个所述目标弹幕在所述终端的显示页面进行渲染。
2.根据权利要求1所述的方法,其特征在于,所述获取与所述时间区间对应的各个弹幕,包括:
获取所述视频的各个视频弹幕,并确定每条所述视频弹幕的上传时间戳;
将上传时间戳位于所述时间区间中的每个视频弹幕均确定为与所述时间区间对应的弹幕。
3.根据权利要求1所述的方法,其特征在于,所述基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数,包括:
对每个所述弹幕的弹幕信息进行解析,获取每个所述弹幕的上传用户信息以及弹幕内容数据;
基于每个所述弹幕的上传用户信息,确定每个所述弹幕的优先数值;
对每个所述弹幕的弹幕内容数据进行不相似评估,得到每个所述弹幕的不相似分数;
根据每个所述弹幕的不相似分数和优先数值,得到每个所述弹幕的渲染分数。
4.根据权利要求1所述的方法,其特征在于,所述基于所述弹幕渲染信息,确定弹幕渲染数量,包括:
获取所述弹幕渲染信息中的各项分析参数,各项分析参数包括弹幕轨道的数量、每条弹幕轨道的弹幕移动速度以及每条弹幕轨道当前的弹幕显示信息;
基于各项所述分析参数对所述终端的显示页面进行分析,确定所述终端的显示页面在所述当前弹幕渲染时间点可展示的弹幕数量,并将该弹幕数量确定为弹幕渲染数量。
5.根据权利要求1所述的方法,其特征在于,所述基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,包括:
判断所述弹幕序列中的弹幕个数是否小于或等于所述弹幕渲染数量;
若确定所述弹幕序列中的弹幕个数小于或等于所述弹幕渲染数量,则将所述弹幕序列中的各个弹幕均确定为目标弹幕;
若确定所述弹幕序列中的弹幕个数大于所述弹幕渲染数量,则按照弹幕排序的先后顺序,在所述弹幕序列中逐一选择弹幕,直至选择的弹幕个数等于所述弹幕渲染数量时,将选择的各个弹幕均确定为目标弹幕。
6.一种弹幕渲染装置,其特征在于,包括:
第一确定单元,用于确定视频的当前弹幕渲染时间点;
第二确定单元,用于确定与所述当前弹幕渲染时间点对应的时间区间和弹幕渲染信息;
获取单元,用于获取与所述时间区间对应的各个弹幕;
第三确定单元,用于基于各个所述弹幕的弹幕信息,确定每个所述弹幕的渲染分数;
排序单元,用于基于各个所述渲染分数,对各个所述弹幕进行排序,得到弹幕序列;
第四确定单元,用于基于所述弹幕渲染信息,确定弹幕渲染数量,所述弹幕渲染数量为播放所述视频的终端在所述当前弹幕渲染时间点可渲染的弹幕条数;
渲染单元,用于基于所述弹幕渲染数量,在所述弹幕序列的各个弹幕中确定目标弹幕,并将每个所述目标弹幕在所述终端的显示页面进行渲染。
7.根据权利要求6所述的装置,其特征在于,所述获取单元,包括:
第一获取子单元,用于获取所述视频的各个视频弹幕,并确定每条所述视频弹幕的上传时间戳;
第一确定子单元,用于将上传时间戳位于所述时间区间中的每个视频弹幕均确定为与所述时间区间对应的弹幕。
8.根据权利要求6所述的装置,其特征在于,所述第三确定单元,包括:
第二获取子单元,用于对每个所述弹幕的弹幕信息进行解析,获取每个所述弹幕的上传用户信息以及弹幕内容数据;
第二确定子单元,用于基于每个所述弹幕的上传用户信息,确定每个所述弹幕的优先数值;
评估子单元,用于对每个所述弹幕的弹幕内容数据进行不相似评估,得到每个所述弹幕的不相似分数;
获得子单元,用于根据每个所述弹幕的不相似分数和优先数值,得到每个所述弹幕的渲染分数。
9.一种存储介质,其特征在于,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如权利要求1~5任意一项所述的弹幕渲染方法。
10.一种电子设备,其特征在于,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1~5任意一项所述的弹幕渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111491951.XA CN114173198B (zh) | 2021-12-08 | 2021-12-08 | 弹幕渲染方法及装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111491951.XA CN114173198B (zh) | 2021-12-08 | 2021-12-08 | 弹幕渲染方法及装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114173198A true CN114173198A (zh) | 2022-03-11 |
CN114173198B CN114173198B (zh) | 2024-04-19 |
Family
ID=80484599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111491951.XA Active CN114173198B (zh) | 2021-12-08 | 2021-12-08 | 弹幕渲染方法及装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114173198B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116193183A (zh) * | 2022-11-11 | 2023-05-30 | 深圳创维-Rgb电子有限公司 | 弹幕显示方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245960A (zh) * | 2014-07-07 | 2016-01-13 | 乐视网信息技术(北京)股份有限公司 | 视频的弹幕显示方法及装置 |
CN109040852A (zh) * | 2018-07-13 | 2018-12-18 | 北京奇艺世纪科技有限公司 | 一种弹幕筛选方法及装置 |
CN111031400A (zh) * | 2019-11-25 | 2020-04-17 | 上海哔哩哔哩科技有限公司 | 弹幕呈现方法和系统 |
CN113360053A (zh) * | 2021-05-28 | 2021-09-07 | 富途网络科技(深圳)有限公司 | 显示的控制方法、电子设备以及存储介质 |
-
2021
- 2021-12-08 CN CN202111491951.XA patent/CN114173198B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245960A (zh) * | 2014-07-07 | 2016-01-13 | 乐视网信息技术(北京)股份有限公司 | 视频的弹幕显示方法及装置 |
CN109040852A (zh) * | 2018-07-13 | 2018-12-18 | 北京奇艺世纪科技有限公司 | 一种弹幕筛选方法及装置 |
CN111031400A (zh) * | 2019-11-25 | 2020-04-17 | 上海哔哩哔哩科技有限公司 | 弹幕呈现方法和系统 |
CN113360053A (zh) * | 2021-05-28 | 2021-09-07 | 富途网络科技(深圳)有限公司 | 显示的控制方法、电子设备以及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116193183A (zh) * | 2022-11-11 | 2023-05-30 | 深圳创维-Rgb电子有限公司 | 弹幕显示方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114173198B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107551555B (zh) | 游戏画面显示方法及装置、存储介质、终端 | |
CN105373306B (zh) | 虚拟物品赠送方法及装置 | |
CN109862414B (zh) | 一种蒙版弹幕显示方法、装置及服务器 | |
CN103718166B (zh) | 信息处理设备、信息处理方法 | |
CN109104641B (zh) | 一种多主播直播间赠送虚拟礼物的方法及装置 | |
CN107596687B (zh) | 游戏画面显示系统及方法、存储介质、电子设备 | |
CN108833936B (zh) | 直播间信息推送方法、装置、服务器和介质 | |
CN111641859B (zh) | 显示信息方法和装置、计算机可读的存储介质及电子装置 | |
CN107680157A (zh) | 一种基于直播的互动方法及直播系统、电子设备 | |
KR20170130608A (ko) | 타임 시리즈 익스플로러 | |
CN106648283B (zh) | 一种弹幕信息处理方法及服务器 | |
CN105916057A (zh) | 一种视频弹幕的显示方法及装置 | |
CN112087665B (zh) | 视频直播的预览方法、计算设备及计算机存储介质 | |
WO2023279917A1 (zh) | 弹幕显示方法、弹幕发送方法、装置、计算机设备、计算机可读存储介质及计算机程序产品 | |
CN114095749B (zh) | 推荐及直播界面展示方法、计算机存储介质、程序产品 | |
CN110287399A (zh) | 直播信息处理方法、装置、电子设备及存储介质 | |
CN110752983A (zh) | 一种互动方法、装置、界面、介质和计算设备 | |
CN113824983A (zh) | 数据匹配方法、装置、设备及计算机可读存储介质 | |
CN114666671B (zh) | 直播点赞互动方法、装置、设备及存储介质 | |
CN111818393A (zh) | 一种视频进度调整方法、调整装置及电子设备 | |
CN114173198A (zh) | 弹幕渲染方法及装置、存储介质及电子设备 | |
CN106385613B (zh) | 控制弹幕播放的方法及装置 | |
CN110336957B (zh) | 一种视频制作方法、装置、介质和电子设备 | |
CN113573131B (zh) | 应用于直播的数据处理方法、装置、电子设备及存储介质 | |
CN109218766B (zh) | 一种召集粉丝的方法、直播平台服务器及主播端 |
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 |