CN110784773A - 弹幕生成方法、装置、电子设备及存储介质 - Google Patents
弹幕生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110784773A CN110784773A CN201911176224.7A CN201911176224A CN110784773A CN 110784773 A CN110784773 A CN 110784773A CN 201911176224 A CN201911176224 A CN 201911176224A CN 110784773 A CN110784773 A CN 110784773A
- Authority
- CN
- China
- Prior art keywords
- character
- character image
- texture cache
- comment information
- image corresponding
- 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.)
- Pending
Links
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/47—End-user applications
- H04N21/475—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
- H04N21/4756—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for rating content, e.g. scoring a recommended movie
-
- 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/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- 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/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8126—Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
- H04N21/8133—Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts specifically related to the content, e.g. biography of the actors in a movie, detailed information about an article seen in a video program
Abstract
本发明实施例提供了一种弹幕生成方法、装置、电子设备及存储介质。弹幕生成方法包括:在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;如果不存在,则生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。本发明实施例提高了转换效率,提升了弹幕的流畅度,并且大大降低了对内存的占用。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种弹幕生成方法、装置、电子设备及存储介质。
背景技术
弹幕指的是在网络上观看视频时弹出的评论性字幕。用户在观看视频时,大量评论性字幕从屏幕上飘过时效果看上去像是飞行射击游戏里的弹幕,因此将观看视频时这种特殊的评论性字幕称之为弹幕。弹幕可以给用户一种实时互动的感觉,增加用户的参与感,同时增强了视频的话题感。
现有技术中,客户端在播放视频的过程中,服务器接收到用户对该视频的评论信息,将评论信息下发给客户端。客户端接收到评论信息后,将每条评论信息转换成一个图像,将该图像渲染生成一条弹幕。
但是,用户对视频的评论信息数量很大,客户端针对每条评论信息,均要将一条评论信息整体转换成一个图像,转换效率低,导致弹幕的流畅度差;并且一条评论信息转换成的图像占用的内存较大,而评论信息数量较多,导致内存的占用非常可观。
发明内容
本发明实施例的目的在于提供一种弹幕生成方法、装置、电子设备及存储介质,以解决将评论信息转换成弹幕的效率低,弹幕的流畅度较差,内存占用较大的问题。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种弹幕生成方法,所述方法包括:
在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;
针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;
如果不存在,则生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;
在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;所述将所述字符对应的字符图像存入所述纹理缓存中的步骤,包括:如果所述纹理缓存中不存在空闲空间,则利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像;如果所述纹理缓存中存在空闲空间,则将所述字符对应的字符图像存入所述空闲空间中。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则将所述字符对应的字符图像的引用次数增加一次;在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:将所述字符对应的字符图像的引用次数增加一次。
可选地,在所述接收用户对视频的评论信息的步骤之前,还包括:获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中;所述通用字符为在对所述视频的历史评论信息中出现的次数超过设定阈值的字符。
可选地,在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中;在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
可选地,所述从所述纹理缓存中获取所述全部字符对应的字符图像的步骤,包括:按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像。
可选地,所述方法还包括:在关闭所述视频后,清空所述纹理缓存。
在本发明实施的第二方面,还提供了一种弹幕生成装置,所述装置包括:
接收模块,用于在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;
确定模块,用于针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;
第一存储模块,用于在所述确定模块确定出不存在时,生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;
生成模块,用于在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;所述第一存储模块包括:替换单元,用于在所述纹理缓存中不存在空闲空间时,利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像;存入单元,用于在所述纹理缓存中存在空闲空间时,将所述字符对应的字符图像存入所述空闲空间中。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;所述装置还包括:第一增加模块,用于在所述确定模块确定出存在时,将所述字符对应的字符图像的引用次数增加一次;第二增加模块,用于在所述第一存储模块将所述字符对应的字符图像存入所述纹理缓存中的之后,将所述字符对应的字符图像的引用次数增加一次。
可选地,所述装置还包括:第二存储模块,用于获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中;所述通用字符为在对所述视频的历史评论信息中出现的次数超过设定阈值的字符。
可选地,所述装置还包括:第一获取模块,用于在所述确定模块确定出存在时,获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中;第二获取模块,用于在所述第一存储模块将所述字符对应的字符图像存入所述纹理缓存中的之后,获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
可选地,所述生成模块包括:图像获取单元,用于按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像。
可选地,所述装置还包括:清空模块,用于在关闭所述视频后,清空所述纹理缓存。
在本发明实施的又一方面,还提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述任一所述的弹幕生成方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的弹幕生成方法。
在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的弹幕生成方法。
本发明实施例提供的弹幕生成方法、装置、电子设备及存储介质,通过预先设置纹理缓存用于存储字符对应的字符图像,在接收到评论信息后,针对评论信息中的每个字符,分别确定预设的纹理缓存中是否存在该字符对应的字符图像;如果存在,则无需再对该字符进行转换,直接使用纹理缓存中已经存储的字符图像即可;如果不存在,再对该字符进行转换,生成该字符对应的字符图像,并将该字符对应的字符图像存入纹理缓存中;在评论信息中的全部字符确定完后,从纹理缓存中获取全部字符对应的字符图像,依据获取的字符图像渲染生成评论信息对应的弹幕。
由此可知,本发明实施例中不再对整条评论信息进行整体转换,而是从单个字符级别进行转换。一方面,许多字符在评论信息中会重复出现,因此只需在字符第一次出现在评论信息中时对该字符进行一次转换,后续该字符再出现时直接使用已存储的字符图像即可,从而避免了对字符的重复转换过程,提高了转换效率,提升了弹幕的流畅度;另一方面,一个字符对应的字符图片占用的内存较小,并且重复的字符只占用一个字符图像的内存,从而大大降低对内存的占用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例一中的一种弹幕生成方法的流程图;
图2为本发明实施例二中的一种弹幕生成方法的流程图;
图3为本发明实施例二中的一种弹幕处理的整体过程示意图;
图4为本发明实施例三中的一种弹幕生成装置的结构框图;
图5为本发明实施例四中的一种弹幕生成装置的结构框图;
图6为本发明实施例中的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
在客户端播放视频的过程中,服务器接收不同用户针对该视频上传的评论信息,服务器将评论信息下发给客户端。客户端接收到评论信息后,将评论信息转换成图像,渲染成弹幕,在播放视频的同时动态显示弹幕。如果将每条评论信息转换成一个图像,将该图像渲染成一条弹幕,会导致转换效率低,弹幕的流畅度差,对内存的占用大。
本发明实施例中针对上述问题,在生成弹幕的过程中,不再采用将每条评论信息转换成一个图像的方式,而是从评论信息中的单个字符级别进行转换,对于重复出现的字符无需重复转换,无需重复存储,从而提高转换效率,降低对内存的占用。
实施例一
图1为本发明实施例一中的一种弹幕生成方法的流程图。如图1所示,本发明实施例中的弹幕生成方法可以包括以下步骤:
步骤101,在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符。
本发明实施例的方法可以应用于客户端中,客户端可以为各种视频APP(应用程序)。当用户通过客户端观看视频时,可以针对视频发表评论,客户端将用户对视频的评论信息上传至视频APP对应的服务器中。服务器接收到不同用户对视频的评论信息,会将各用户的评论信息均下发到正在播放该视频的客户端。
客户端在播放视频的过程中,可以接收服务器下发的用户对该视频的评论信息。评论信息中可以包括字符。字符是指计算机中使用的字母、数字、字和符号,如A、B、C、1、2、3、大、小,等等。比如,一条评论信息可以为“xxx的演技真棒”,等等。当然,评论信息中还可以包括表情图片等信息,本发明实施例主要介绍对评论信息中的字符的处理过程。
步骤102,针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像。
预先设置纹理缓存,纹理缓存用于存储字符对应的字符图像。客户端针对评论信息中的每个字符,从第一个字符开始,逐个确定预设的纹理缓存中是否存在该字符对应的字符图像。如果存在,则继续确定下一个字符。
步骤103,如果不存在,则生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中。
如果在步骤102中确定出不存在字符对应的字符图像,则客户端生成该字符对应的字符图像,并将该字符对应的字符图像存入纹理缓存中,以便后续评论信息中再出现该字符时使用。
步骤104,在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
当评论信息中的全部字符都确定完后,即可开始将评论信息转换成弹幕。经过上述步骤102和步骤103,在纹理缓存中已经存入了评论信息中的全部字符对应的字符图像,因此客户端从纹理缓存中获取全部字符对应的字符图像,然后依据获取的这些全部字符对应的字符图像渲染生成评论信息对应的弹幕。
本发明实施例中不再对整条评论信息进行整体转换,而是从单个字符级别进行转换。一方面,许多字符在评论信息中会重复出现,因此只需在字符第一次出现在评论信息中时对该字符进行一次转换,后续该字符再出现时直接使用已存储的字符图像即可,从而避免了对字符的重复转换过程,提高了转换效率,提升弹幕的流畅度;另一方面,一个字符对应的字符图片占用的内存较小,并且重复的字符只占用一个字符图像的内存,从而大大降低对内存的占用。
实施例二
图2为本发明实施例二中的一种弹幕生成方法的流程图。如图2所示,本发明实施例中的弹幕生成方法可以包括以下步骤:
步骤201,在播放视频时,获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中。
步骤202,接收对视频的评论信息,所述评论信息包括字符。
步骤203,针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像。若是,则执行步骤205;若否,则执行步骤204。
步骤204,生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中。
步骤205,将所述字符对应的字符图像的引用次数增加一次。
步骤206,获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
步骤207,在所述评论信息中的全部字符确定完后,按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
步骤208,在所述视频关闭后,清空所述纹理缓存。
在步骤201中,客户端在启动一个新的视频后,针对该视频设置纹理缓存。纹理缓存是指用于存放纹理的显存,它可以位于GPU(Graphics Processing Unit,图形处理器)中。纹理缓存可以为单张纹理,将该纹理划分为多张子纹理,每张子纹理可以用于存储一个字符图像。
客户端可以在刚开始播放视频时,在该视频对应的纹理缓存中预先存储一些通用字符对应的字符图像。通用字符是指在用户对该视频的历史评论信息中出现的次数超过设定阈值的字符,也即在历史评论信息中出现的次数较多的字符。其中,对于设定阈值的具体数值,本领域技术人员根据实际经验设置任意适用的数值均可,本发明实施例对此不作限制。
在一种可选实施方式中,客户端可以从服务器中获取通用字符。比如,客户端向服务器发送获取请求。服务器接收到获取请求后,可以获取用户对该视频的历史评论信息并从历史评论信息中获取出现的次数超过设定阈值的字符,也即通用字符,服务器将通用字符返回给客户端。在实现中,服务器可以将通用字符转换为JSON(JavaScript ObjectNotation,JS对象标记)数据格式的字符串,服务器发送通用字符对应的字符串至客户端。
客户端在获取到通用字符后,生成通用字符对应的字符图像。客户端从通用字符对应的字符串中解析出通用字符,针对每个通用字符,对该通用字符进行光栅化处理,得到该通用字符对应的字符图像。光栅化是指将字符从一个向量表示转化到光栅或者位图表示的过程。
可选地,客户端可以调用Free Type接口对通用字符进行光栅化处理。FreeType库是一个开源的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,是一个用C语言实现的字体光栅化引擎制作的一个函式库,它可以用来将字符栅格化并映射成位图以及提供其它字体相关业务的支持。对于光栅化处理的具体过程,本领域技术人员根据实际经验进行相关处理即可,本发明实施例在此不再详细论述。
客户端将通用字符对应的字符图像存入纹理缓存中。由于通用字符在历史评论信息中出现的次数较多,因此其在播放该视频时的评论信息中出现的概率也较高,通过预先缓存通用字符对应的字符图像,可以提高在播放该视频时接收到的评论信息中的字符的命中概率,进一步提高字符的转换效率。
在步骤202中,客户端在播放视频的过程中,实时接收服务器发送的评论信息。与上述通用字符类似,服务器可以将评论信息转换为JSON数据格式的字符串,服务器发送评论信息对应的字符串至客户端。
在步骤203中,客户端接收到评论信息对应的字符串,从该字符串中解析出评论信息。针对评论信息中的每个字符,分别确定预设的纹理缓存中是否存在该字符对应的字符图像。在一种可选实施方式中,客户端中可以维护一个key-value(键-值)表格,其中key用于存储在纹理缓存中已存在的字符(比如,存储字符对应的编码,该编码为客户端能够识别的、用于唯一标识一个字符的编码,等等),value用于存储对应字符在纹理缓存中的存储位置。客户端针对评论信息中的一个字符,在确定预设的纹理缓存中是否存在该字符对应的字符图像时,可以将该字符与表格中的key进行比较,查找key中是否存在该字符,如果key中存在该字符,则说明纹理缓存中存在该字符对应的字符图像,否则说明纹理缓存中不存在该字符对应的字符图像。
在步骤204中,如果纹理缓存中不存在该字符对应的字符图像,则客户端要生成该字符对应的字符图像。与上述通用字符类似,客户端对该字符进行光栅化处理,得到该字符对应的字符图像。可选地,客户端可以调用Free Type接口对字符进行光栅化处理。客户端将生成的该字符对应的字符图像存入纹理缓存中。存入后,客户端还可以将该字符记录到上述表格中的key中,并将该字符在纹理缓存中的存储位置记录到表格中对应的value中。
由于纹理缓存的空间是有限的,因此客户端在将生成的字符图像存入纹理缓存中时,可能会出现纹理缓存中存在空闲空间和不存在空闲空间两种情况。针对该种情况,本实施例中可以为纹理缓存中存储的字符图像设置引用次数。引用次数表征字符图像对应的字符在对视频的历史评论信息中出现的次数。比如,如果有两条历史评论信息,其中一条为“演员演技真好”,另一条为“演员演得很好”,其中字符“演”出现了4次,则字符“演”对应的字符图像的引用次数为4次;字符“员”出现了2次,则字符“员”对应的字符图像的引用次数为2次;字符“好”出现了2次,则字符“好”对应的字符图像的引用次数为2次;其它字符各出现了1次,则其它各字符对应的字符图像的引用次数均为1。
可选地,将所述字符对应的字符图像存入所述纹理缓存中的步骤可以包括:如果所述纹理缓存中不存在空闲空间,则利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像。由于引用次数最少的字符图像表明该字符图像对应的字符在历史评论信息中出现的次数最少,因此后续的评论信息中出现该字符的概率较小,替换掉引用次数最少的字符图像对字符的转换效率影响较小。如果引用次数最少的字符图像为至少两个,则可以从其中随机选取一个进行替换。如果所述纹理缓存中存在空闲空间,则将所述字符对应的字符图像存入所述空闲空间中,在存入时可以随机选取一个用于存储该字符图像的空闲空间。
在步骤205中,如果步骤203中确定出纹理缓存中存在所述字符对应的字符图像,说明该字符在评论信息中又出现一次,该字符对应的字符图像又被引用一次,因此可以将该字符对应的字符图像的引用次数增加一次。如果步骤204中生成该字符对应的字符图像,并将该字符对应的字符图像存入纹理缓存中,也说明该字符在评论信息中又出现一次,该字符对应的字符图像又被引用一次,因此也可以将该字符对应的字符图像的引用次数增加一次。
在步骤206中,由于后续在渲染生成评论信息对应的弹幕时,要使用纹理缓存中存在的该评论信息中的字符对应的字符图像,因此如果步骤203中确定出纹理缓存中存在所述字符对应的字符图像,则获取该字符对应的字符图像在纹理缓存中的存储位置,将存储位置存入预设的顶点缓存中。如果步骤204中生成该字符对应的字符图像,并将该字符对应的字符图像存入纹理缓存中,也获取该字符对应的字符图像在纹理缓存中的存储位置,将存储位置存入预设的顶点缓存中。
其中,每个字符图像为一个方形的图像,具有四个顶点,字符图像在纹理缓存中的存储位置可以为字符图像的四个顶点在纹理缓存中的位置。纹理缓存可以为一张纹理,其中包括多行多列的像素,字符图像的四个顶点在纹理缓存中的位置可以理解为四个顶点的像素在纹理中所在的行和列。
顶点缓存是指用于存储顶点数据的连续内存空间。多条评论信息中的字符对应的字符图像在纹理缓存中的位置可以复用一个顶点缓存。
需要说明的是,本发明实施例不限定上述步骤205和步骤206的执行顺序,步骤205和步骤206可以按照任意顺序先后执行,也可以并列执行。
经过上述步骤203和步骤206循环执行,可以将评论信息中的全部字符确定完。在步骤207中,在所述评论信息中的全部字符确定完后,按照顶点缓存中记录的存储位置,可以从纹理缓存中获取全部字符对应的字符图像,依据获取的字符图像渲染生成评论信息对应的弹幕。在生成评论信息对应的弹幕后,还可以将该评论信息中的全部字符对应的字符图像在纹理缓存中的存储位置从顶点缓存中清除,以便后续的评论信息可以继续复用该顶点缓存。
图3为本发明实施例二中的一种弹幕处理的整体过程示意图。如图3所示,整体处理过程采用生产者-消费者模型,生产者线程负责弹幕的字符生成、字符排版、弹幕生产、弹幕排版、弹幕内存绘制等工作;消费者线程为渲染线程,负责将文本和图像加载到纹理、弹幕数据加载到显存、弹幕动画、弹幕绘制、帧率控制等工作。生产者线程和消费者线程均循环执行,针对一条评论信息执行一次。
在生产者线程中,客户端在接收到一条评论信息后,首先对评论信息中的字符进行字符生成,字符生成可以包括对字符的格式化,包括字号、字体、颜色等的格式化;然后进行字符排版,本发明实施例中的步骤203~步骤206可以在字符排版过程中执行;然后进行弹幕生产,弹幕生产可以包括将字符按照顺序排列成弹幕形式;然后进行弹幕排版,弹幕排版可以包括为弹幕分配轨道等;然后进行弹幕内存绘制,弹幕内存绘制可以包括将弹幕对应的数据,如字符图像的存储位置等转换为GPU能够识别的数据等。
弹幕内存绘制得到的数据,可以经过弹幕分块结构传递到消费者线程,弹幕分块结构可以负责将弹幕对应的数据按照顺序缓存到列表中,然后再按照顺序传递到消费者线程。
在消费者线程中,首先将文本和图像(也即弹幕对应的数据)加载到纹理;然后将弹幕对应的数据加载到显存,显存可以指上述的纹理缓存,纹理缓存位于GPU中;然后制作弹幕动画;然后进行弹幕绘制,本发明实施例中的步骤207可以在弹幕绘制过程中执行;然后进行帧率控制,帧率控制是指控制弹幕的显示频率。
在步骤208中,由于在视频关闭后,无需再针对该视频生成弹幕,也即无需再使用纹理缓存中缓存的字符图像,如果该视频仍然占用为其设置的纹理缓存,则会导致纹理缓存的浪费,因此在视频关闭后,可以清空为该视频设置的纹理缓存,从而节省对缓存的占用,避免缓存的浪费。
现有技术中对弹幕的处理方式主要是利用系统原生动画、UI(User Interface,用户界面)组件进行字符渲染,图文混排,主要问题体现在安卓、ios端单独维护弹幕的基础渲染库,只能在特定平台使用。本发明实施例中可以采用c++实现弹幕生成方法,从而能够跨平台使用,利用开源Free Type光栅化字符,利用OpenGL ES(OpenGL for EmbeddedSystems,OpenGL ES是OpenGL三维图形API的子集)进行GPU高速渲染,还可以支持图文混排,支持常见的弹幕格式。现有技术中在生成弹幕时从评论信息的级别处理,将一条评论信息整体转换成一张图像。本发明实施例中以逐个字符渲染为主,利用单张纹理划分子纹理缓存字符图像,应用自己管理纹理缓存,带来的收益是降低维护成本,降低内存消耗;利用单个顶点缓存存储布局数据;利用LRU(Least Recently Used,最近最少使用)算法在纹理缓存满的时候替换最少使用的字符图像;统计视频评论信息中的通用字符,预先进行通用字符对应的字符图像的缓存,省去了弹幕绘制时候数据的上传,大大提高缓存命中率。
实施例三
图4为本发明实施例三中的一种弹幕生成装置的结构框图。如图4所示,本发明实施例中的弹幕生成装置可以包括以下模块:
接收模块401,用于在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符。
确定模块402,用于针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像。
第一存储模块403,用于在所述确定模块确定出不存在时,生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中。
生成模块404,用于在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
本发明实施例中不再对整条评论信息进行整体转换,而是从单个字符级别进行转换。一方面,许多字符在评论信息中会重复出现,因此只需在字符第一次出现在评论信息中时对该字符进行一次转换,后续该字符再出现时直接使用已存储的字符图像即可,从而避免了对字符的重复转换过程,提高了转换效率,提升弹幕的流畅度;另一方面,一个字符对应的字符图片占用的内存较小,并且重复的字符只占用一个字符图像的内存,从而大大降低对内存的占用。
实施例四
图5为本发明实施例四中的一种弹幕生成装置的结构框图。如图5所示,本发明实施例中的弹幕生成装置可以包括以下模块:
接收模块501,用于在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符。
确定模块502,用于针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像。
第一存储模块503,用于在所述确定模块确定出不存在时,生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中。
生成模块504,用于在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数。所述第一存储模块503包括:替换单元5031,用于在所述纹理缓存中不存在空闲空间时,利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像;存入单元5032,用于在所述纹理缓存中存在空闲空间时,将所述字符对应的字符图像存入所述空闲空间中。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数。所述装置还包括:第一增加模块505,用于在所述确定模块502确定出存在时,将所述字符对应的字符图像的引用次数增加一次;第二增加模块506,用于在所述第一存储模块503将所述字符对应的字符图像存入所述纹理缓存中的之后,将所述字符对应的字符图像的引用次数增加一次。
可选地,所述装置还包括:第二存储模块507,用于获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中;所述通用字符为在对所述视频的历史评论信息中出现的次数超过设定阈值的字符。
可选地,所述装置还包括:第一获取模块508,用于在所述确定模块确定出存在时,获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中;第二获取模块509,用于在所述第一存储模块将所述字符对应的字符图像存入所述纹理缓存中的之后,获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
可选地,所述生成模块504包括:图像获取单元5041,用于按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像。
可选地,所述装置还包括:清空模块510,用于在关闭所述视频后,清空所述纹理缓存。
本发明实施例中以逐个字符渲染为主,利用单张纹理划分子纹理缓存字符图像,应用自己管理纹理缓存,带来的收益是降低维护成本,降低内存消耗;利用单个顶点缓存存储布局数据;利用LRU算法在纹理缓存满的时候替换最少使用的字符图像;统计视频评论信息中的通用字符,预先进行通用字符对应的字符图像的缓存,省去了弹幕绘制时候数据的上传,大大提高缓存命中率。
本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:
在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;
针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;
如果不存在,则生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;
在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数。所述将所述字符对应的字符图像存入所述纹理缓存中的步骤,包括:如果所述纹理缓存中不存在空闲空间,则利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像;如果所述纹理缓存中存在空闲空间,则将所述字符对应的字符图像存入所述空闲空间中。
可选地,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数。在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则将所述字符对应的字符图像的引用次数增加一次。在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:将所述字符对应的字符图像的引用次数增加一次。
可选地,在所述接收用户对视频的评论信息的步骤之前,还包括:获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中。所述通用字符为在对所述视频的历史评论信息中出现的次数超过设定阈值的字符。
可选地,在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
可选地,所述从所述纹理缓存中获取所述全部字符对应的字符图像的步骤,包括:按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像。
可选地,所述方法还包括:在关闭所述视频后,清空所述纹理缓存。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral 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))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种弹幕生成方法,其特征在于,所述方法包括:
在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;
针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;
如果不存在,则生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;
在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
2.根据权利要求1所述的方法,其特征在于,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;
所述将所述字符对应的字符图像存入所述纹理缓存中的步骤,包括:
如果所述纹理缓存中不存在空闲空间,则利用所述字符对应的字符图像替换所述纹理缓存中引用次数最少的字符图像;
如果所述纹理缓存中存在空闲空间,则将所述字符对应的字符图像存入所述空闲空间中。
3.根据权利要求1所述的方法,其特征在于,所述字符图像具有引用次数,所述引用次数表征所述字符图像对应的字符,在对所述视频的历史评论信息中出现的次数;
在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则将所述字符对应的字符图像的引用次数增加一次;
在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:将所述字符对应的字符图像的引用次数增加一次。
4.根据权利要求1所述的方法,其特征在于,在所述接收用户对视频的评论信息的步骤之前,还包括:
获取通用字符,生成所述通用字符对应的字符图像,并将所述通用字符对应的字符图像存入所述纹理缓存中;
所述通用字符为在对所述视频的历史评论信息中出现的次数超过设定阈值的字符。
5.根据权利要求1所述的方法,其特征在于,
在所述确定预设的纹理缓存中是否存在所述字符对应的字符图像的步骤之后,还包括:如果存在,则获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中;
在所述将所述字符对应的字符图像存入所述纹理缓存中的步骤之后,还包括:获取所述字符对应的字符图像在所述纹理缓存中的存储位置,将所述存储位置存入预设的顶点缓存中。
6.根据权利要求5所述的方法,其特征在于,所述从所述纹理缓存中获取所述全部字符对应的字符图像的步骤,包括:
按照所述顶点缓存中记录的存储位置,从所述纹理缓存中获取所述全部字符对应的字符图像。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在关闭所述视频后,清空所述纹理缓存。
8.一种弹幕生成装置,其特征在于,所述装置包括:
接收模块,用于在播放视频时,接收对所述视频的评论信息,所述评论信息包括字符;
确定模块,用于针对所述评论信息中的每个字符,确定预设的纹理缓存中是否存在所述字符对应的字符图像;
第一存储模块,用于在所述确定模块确定出不存在时,生成所述字符对应的字符图像,并将所述字符对应的字符图像存入所述纹理缓存中;
生成模块,用于在所述评论信息中的全部字符确定完后,从所述纹理缓存中获取所述全部字符对应的字符图像,依据获取的字符图像渲染生成所述评论信息对应的弹幕。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911176224.7A CN110784773A (zh) | 2019-11-26 | 2019-11-26 | 弹幕生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911176224.7A CN110784773A (zh) | 2019-11-26 | 2019-11-26 | 弹幕生成方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110784773A true CN110784773A (zh) | 2020-02-11 |
Family
ID=69392682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911176224.7A Pending CN110784773A (zh) | 2019-11-26 | 2019-11-26 | 弹幕生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110784773A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112423111A (zh) * | 2020-11-05 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 图形引擎和适用于播放器的图形处理方法 |
CN116320648A (zh) * | 2022-11-14 | 2023-06-23 | 北京奇艺世纪科技有限公司 | 一种弹幕绘制方法、装置及电子设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145243A (zh) * | 2006-09-15 | 2008-03-19 | 精工爱普生株式会社 | 用于保持字体结构的方法和设备 |
CN101496066A (zh) * | 2006-08-03 | 2009-07-29 | 高通股份有限公司 | 具有经扩充顶点高速缓冲存储器的图形处理单元 |
CN103177709A (zh) * | 2011-12-20 | 2013-06-26 | 北大方正集团有限公司 | 字符显示方法和装置 |
CN103186919A (zh) * | 2011-12-28 | 2013-07-03 | 腾讯科技(深圳)有限公司 | 一种文字渲染方法及装置 |
CN103617220A (zh) * | 2013-11-22 | 2014-03-05 | 北京掌阔移动传媒科技有限公司 | 一种移动终端3d模型实现方法和装置 |
CN103886538A (zh) * | 2012-12-20 | 2014-06-25 | 辉达公司 | 用于存储共享顶点的技术 |
CN106210883A (zh) * | 2016-08-11 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频渲染的方法、设备 |
CN106504185A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种渲染优化方法和装置 |
CN107172474A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种利用画布绘制弹幕的方法及装置 |
CN107221020A (zh) * | 2017-05-27 | 2017-09-29 | 北京奇艺世纪科技有限公司 | 一种文字纹理绘制方法及装置 |
CN108197555A (zh) * | 2017-12-28 | 2018-06-22 | 杭州相芯科技有限公司 | 一种基于人脸追踪的实时人脸融合方法 |
CN108205960A (zh) * | 2016-12-19 | 2018-06-26 | 北京四维图新科技股份有限公司 | 一种文字渲染的方法和装置、电子地图制作系统及导航系统 |
CN109062521A (zh) * | 2018-07-20 | 2018-12-21 | 珠海智汇网络设备有限公司 | 一种打印数据处理方法及装置、计算机装置、存储介质 |
CN109919827A (zh) * | 2019-02-22 | 2019-06-21 | 搜游网络科技(北京)有限公司 | 一种图形绘制方法、装置及计算机可读介质、设备 |
-
2019
- 2019-11-26 CN CN201911176224.7A patent/CN110784773A/zh active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101496066A (zh) * | 2006-08-03 | 2009-07-29 | 高通股份有限公司 | 具有经扩充顶点高速缓冲存储器的图形处理单元 |
CN101145243A (zh) * | 2006-09-15 | 2008-03-19 | 精工爱普生株式会社 | 用于保持字体结构的方法和设备 |
CN103177709A (zh) * | 2011-12-20 | 2013-06-26 | 北大方正集团有限公司 | 字符显示方法和装置 |
CN103186919A (zh) * | 2011-12-28 | 2013-07-03 | 腾讯科技(深圳)有限公司 | 一种文字渲染方法及装置 |
CN103886538A (zh) * | 2012-12-20 | 2014-06-25 | 辉达公司 | 用于存储共享顶点的技术 |
CN103617220A (zh) * | 2013-11-22 | 2014-03-05 | 北京掌阔移动传媒科技有限公司 | 一种移动终端3d模型实现方法和装置 |
CN106210883A (zh) * | 2016-08-11 | 2016-12-07 | 浙江大华技术股份有限公司 | 一种视频渲染的方法、设备 |
CN106504185A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种渲染优化方法和装置 |
CN108205960A (zh) * | 2016-12-19 | 2018-06-26 | 北京四维图新科技股份有限公司 | 一种文字渲染的方法和装置、电子地图制作系统及导航系统 |
CN107172474A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种利用画布绘制弹幕的方法及装置 |
CN107221020A (zh) * | 2017-05-27 | 2017-09-29 | 北京奇艺世纪科技有限公司 | 一种文字纹理绘制方法及装置 |
CN108197555A (zh) * | 2017-12-28 | 2018-06-22 | 杭州相芯科技有限公司 | 一种基于人脸追踪的实时人脸融合方法 |
CN109062521A (zh) * | 2018-07-20 | 2018-12-21 | 珠海智汇网络设备有限公司 | 一种打印数据处理方法及装置、计算机装置、存储介质 |
CN109919827A (zh) * | 2019-02-22 | 2019-06-21 | 搜游网络科技(北京)有限公司 | 一种图形绘制方法、装置及计算机可读介质、设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112423111A (zh) * | 2020-11-05 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 图形引擎和适用于播放器的图形处理方法 |
CN116320648A (zh) * | 2022-11-14 | 2023-06-23 | 北京奇艺世纪科技有限公司 | 一种弹幕绘制方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11871086B2 (en) | Method of displaying comment information, computing device, and readable storage medium | |
US11475666B2 (en) | Method of obtaining mask frame data, computing device, and readable storage medium | |
CN110971929B (zh) | 云游戏视频处理方法、电子设备及存储介质 | |
CN111954060B (zh) | 弹幕蒙版的渲染方法、计算机设备及可读存储介质 | |
CN108236784B (zh) | 模型的训练方法和装置、存储介质、电子装置 | |
EP4080469A2 (en) | Method and apparatus of recognizing text, device, storage medium and smart dictionary pen | |
CN110784773A (zh) | 弹幕生成方法、装置、电子设备及存储介质 | |
CN111491208B (zh) | 视频处理方法、装置、电子设备及计算机可读介质 | |
US11743556B2 (en) | Character string display processing method and apparatus, terminal, and storage medium | |
CN110650350A (zh) | 一种编码图像显示方法、装置和电子设备 | |
CN109615048A (zh) | 一种网址处理方法、装置、服务器及用户终端 | |
US20240040147A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
US20120019539A1 (en) | Rendering apparatus, rendering method and computer readable medium | |
CN113542725A (zh) | 视频审核方法、视频审核装置和电子设备 | |
JP6323461B2 (ja) | サーバ装置、クライアント装置、情報処理方法および記録媒体 | |
CN113691835B (zh) | 视频植入方法、装置、设备及计算机可读存储介质 | |
US20230186608A1 (en) | Method, device, and computer program product for video processing | |
CN111954082B (zh) | 蒙版文件结构、蒙版文件的读取方法、计算机设备及可读存储介质 | |
CN115576513A (zh) | 目标图像的显示方法、显示装置、电子设备和存储介质 | |
CN113095058B (zh) | 一种流式文档翻页处理方法、装置、电子设备及存储介质 | |
CN113038184B (zh) | 数据处理方法、装置、设备及存储介质 | |
CN114422861A (zh) | 互动方法、互动装置、电子设备和存储介质 | |
CN113641853A (zh) | 动态封面生成方法、装置、电子设备、介质及程序产品 | |
CN107004018B (zh) | 数据处理方法及装置 | |
EP3876543A1 (en) | Video playback method and apparatus |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200211 |