本发明涉及图像处理,特别是涉及一种弹幕绘制方法、装置及电子设备。
背景技术:
1、随着各类视频播放客户端的推出,流媒体服务商为了提高自身客户端的播放量,在客户端中设置了弹幕发送功能。其中,弹幕是指在网络或者视频播放客户端上观看视频时,视频上弹出的评论性字幕。这样,通过视频中所呈现的弹幕,可以让用户之间产生互动聊天的感觉。当在弹幕中出现了一致的观点时,能够加强用户对于视频的认同感。在用户每次观看视频时,视频中所呈现的弹幕是客户端根据所接收到的文本随时绘制的。
2、相关技术中,客户端在接收到待展示弹幕的文本内容后,便可以根据文本内容绘制可以在视频中进行展示的位图,从而,在视频中展示该待展示弹幕。然而,随着时间的推移,每帧中出现的弹幕数量越发庞大,也就是说,客户端需要在每帧视频中绘制的弹幕数量越发庞大,导致客户端绘制弹幕的效率较低。
技术实现思路
1、本发明实施例的目的在于提供一种弹幕绘制方法、装置及电子设备,以实现提高弹幕的绘制效率。具体技术方案如下:
2、在本发明实施例的第一方面,首先提供了一种弹幕绘制方法,应用于客户端,所述方法包括:
3、获取待展示弹幕所包括的各个待展示字符;
4、针对每个待展示字符,在所述客户端的预设缓存空间中检索该待展示字符的目标位图;
5、若检索到,则从所述预设缓存空间中获取该待展示字符的目标位图;
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、在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的弹幕绘制方法。
46、以上可见,应用本发明实施例提供的方案,在进行弹幕绘制时,客户端可以获取待展示弹幕所包括的各个待展示字符,从而,可以针对每个待展示字符,在上述客户端的预设缓存空间中检索该待展示字符的目标位图。若检索到上述位图,则可以从上述预设缓存空间中获取该待展示字符的目标位图。若未检索到上述位图,则可以从所述预设缓存空间中获取指定位图,作为该待展示字符的目标位图。这样,在确定各个待展示字符的目标位图的拼接顺序后,基于上述拼接顺序,绘制上述待展示弹幕。
47、基于此,应用发明实施例提供的方案,可以在客户端中设置用于缓存常用字符的位图的预设缓存空间,这样,若在上述预设缓存空间中存在待展示弹幕所包括的各个待展示字符的位图,则可以直接获取各个待展示字符的位图,不用重新生成各个位图,从而,提高弹幕的绘制效率。