CN112752131B - 弹幕信息的显示方法和装置、存储介质及电子装置 - Google Patents
弹幕信息的显示方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN112752131B CN112752131B CN201911046855.7A CN201911046855A CN112752131B CN 112752131 B CN112752131 B CN 112752131B CN 201911046855 A CN201911046855 A CN 201911046855A CN 112752131 B CN112752131 B CN 112752131B
- Authority
- CN
- China
- Prior art keywords
- target
- picture object
- rendering
- target picture
- bullet screen
- 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
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/488—Data services, e.g. news ticker
- H04N21/4884—Data services, e.g. news ticker for displaying subtitles
-
- 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
-
- 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/485—End-user interface for client configuration
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种弹幕信息的显示方法和装置、存储介质及电子装置。其中,该方法包括:获取待显示的弹幕信息;确定弹幕信息的所在终端上的操作***对应的渲染组件;利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,其中,目标图片对象用于表示弹幕信息;根据目标图片对象进行弹幕信息的渲染显示。本发明解决了现有技术中渲染弹幕信息的技术问题。
Description
技术领域
本发明涉及信息显示领域,具体而言,涉及一种弹幕信息的显示方法和装置、存储介质及电子装置。
背景技术
在各类视频点播或直播场景中,都能看到弹幕的身影。弹幕,是指观看视频时弹出的评论性字幕,且将评论和视频在同一画面呈现,在视频上方大量飘过时如炮弹一般。
现有技术中的弹幕渲染方案大多基于视频场景,用时间戳来实现画面和弹幕内容同步,如果移植到其他没有时间戳概念的场景,会出现不适用的情况,拓展性上受到限制,并不能基于不同的操作***选择合适的渲染方式。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种弹幕信息的显示方法和装置、存储介质及电子装置,以至少解决现有技术中渲染弹幕信息的技术问题。
根据本发明实施例的一个方面,提供了一种弹幕信息的显示方法,包括:获取待显示的弹幕信息;确定上述弹幕信息的所在终端上的操作***对应的渲染组件;利用上述渲染组件将上述弹幕信息转化为允许被渲染的目标图片对象,其中,上述目标图片对象用于表示上述弹幕信息;根据上述目标图片对象进行上述弹幕信息的渲染显示。
根据本发明实施例的另一方面,还提供了一种弹幕信息的显示装置,包括:第一获取模块,用于获取待显示的弹幕信息;第一确定模块,用于确定上述弹幕信息的所在终端上的操作***对应的渲染组件;第一转化模块,用于利用上述渲染组件将上述弹幕信息转化为允许被渲染的目标图片对象,其中,上述目标图片对象用于表示上述弹幕信息;显示模块,用于根据上述目标图片对象进行上述弹幕信息的渲染显示。
可选地,上述第一转化模块,包括:第一转化单元,用于通过上述渲染组件中的应用程序编程接口将上述弹幕信息转化为允许被渲染的目标图片对象,其中,上述应用程序编程接口是上述操作***中的底层程序接口。
可选地,上述第一转化模块,包括:第二转化单元,用于通过上述渲染组件中的前端框架UIKIT中的图片处理应用程序接口创建虚拟画布,将上述弹幕信息绘制至上述虚拟画布中,将上述虚拟画布中的弹幕信息转化为允许被渲染的目标图片对象。
可选地,上述显示模块,包括:第一渲染单元,用于将上述目标图片对象进行渲染,以显示在目标屏幕上。
可选地,上述第一渲染单元,包括:第一确定子单元,用于通过上述渲染组件中的UIKIT中的图片控件确定上述目标图片对象显示在上述目标屏幕上的第一显示速度;第一设置子单元,用于将上述目标图片对象设置在确定的目标弹道上,并按照上述第一显示速度显示在上述目标屏幕上,其中,上述目标弹道位于上述目标屏幕中。
可选地,上述第一渲染单元,包括:第二确定子单元,用于通过上述渲染组件中的应用程序编程接口Metal或者OpenGL ES确定承载上述目标图片对象的矩形框架;传入子单元,用于将上述矩形框架传入顶点着色器,其中,上述顶点着色器用于对上述目标图片对象进行图元装配,得到着色目标图片对象;上传子单元,用于将上述着色目标图片对象上传至片元着色器,以使上述片元着色器对上述着色目标图片对象的纹理进行处理,得到上述目标纹理对象,其中,对上述着色目标图片对象的纹理进行处理包括对上述着色目标图片对象中的颜色的确定;第二设置子单元,用于将上述目标纹理对象设置在确定的目标弹道上,并按照确定的第二显示速度显示在上述目标屏幕上,其中,上述目标弹道位于上述目标屏幕中。
可选地,上述第二设置子单元还用于通过以下方式确定上述第二显示速度:通过上述渲染组件中的缓冲组件调整上述矩形框架上的顶点数据,以确定出上述第二显示速度。
可选地,上述装置还用于通过以下方式确定上述目标弹道:确定上述目标屏幕中的弹道的空闲值;将上述空闲值大于预设阈值的弹道确定为可用弹道;确定上述可用弹道的可用时间点;将与上述目标图片对象待显示的时间点对应的可用弹道确定为上述目标弹道。
可选地,上述显示模块,包括:第二转化模块,用于将上述目标图片对象转化为目标纹理对象,并将上述目标纹理对象进行渲染,以显示在目标屏幕上。
可选地,上述显示模块,包括:显示子单元,用于利用上述渲染组件中的UIKIT将上述目标图片对象显示在目标屏幕上。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述弹幕信息的显示方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的弹幕信息的显示方法。
在本发明实施例中,采用获取待显示的弹幕信息,确定弹幕信息的所在终端上的操作***对应的渲染组件,利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,其中,目标图片对象用于表示弹幕信息,根据目标图片对象进行弹幕信息的渲染显示的方式,通过与操作***对应的渲染组件对弹幕信息进行渲染,达到了快速渲染弹幕信息的目的,从而实现了提高弹幕信息渲染效率的技术效果,进而解决了现有技术中渲染弹幕信息的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的弹幕信息的显示方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的弹幕信息的显示方法的流程图;
图3是根据本发明实施例的一种可选的弹幕信息显示的示意图;
图4是根据本发明实施例的一种可选的弹幕信息的输入示意图;
图5是根据本发明实施例的一种可选的弹幕信息的渲染流程图(一);
图6是根据本发明实施例的一种可选的弹幕信息的渲染流程图(二);
图7是根据本发明实施例的一种可选的确定目标弹道的示意图;
图8是根据本发明实施例的一种可选的测试弹幕信息的示意图;
图9是根据本发明实施例的一种可选的UIKit的架构示意图;
图10是根据本发明实施例的一种可选的弹幕信息的显示装置的结构示意图;
图11是根据本发明实施例的一种可选的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种弹幕信息的显示方法,可选地,作为一种可选的实施方式,上述弹幕信息的显示方法可以但不限于应用于如图1所示的环境中。
可选地,在本实施例中,上述弹幕信息的显示方法可以但不限于应用于服务器102中,用于获取待显示的弹幕信息,确定弹幕信息的所在终端上的操作***对应的渲染组件,利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,根据目标图片对象进行弹幕信息的渲染显示。其中,上述终端可以但不限于是用户设备108,该用户设备108可以但不限于为手机、平板电脑、笔记本电脑、PC机等支持运行应用客户端的终端设备。用户设备108中包含有存储器114,用于存储目标图片对象、处理器112,用于处理目标图片对象。用户设备108将目标图片对象显示在显示器110上。服务器102中包含有数据库104,用于存储弹幕信息和目标图片对象、处理引擎106,用于处理弹幕信息。
可选地,上述弹幕信息的显示方法可以但不限于应用于可以计算数据的服务器中,上述服务器与终端可以通过网络连接,网络可以包括但不限于无线网络或有线网络。其中,该无线网络包括:WIFI及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述服务器102可以包括但不限于任何可以进行计算的硬件设备。
可选地,作为一种可选的实施方式,如图2所示,上述弹幕信息的显示方法包括:
S202:获取待显示的弹幕信息;
S204:确定弹幕信息的所在终端上的操作***对应的渲染组件;
S206:利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,其中,目标图片对象用于表示弹幕信息;
S208:根据目标图片对象进行弹幕信息的渲染显示。
可选地,在本实施例中,上述弹幕信息的显示方法可以但不限于应用于弹幕显示的场景中,例如,视频播放的场景、语音通话的场景等等。其中,弹幕信息可以但不限于为文字、图片等,如图3所示。操作***包括但不限于是移动操作***,例如IOS***。渲染组件包括但不限于是应用程序编程接口,例如,前端框架UIKIT、OpenGL ES、Metal等。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,可以通过如图4所示的方式输入弹幕信息例如“哈哈哈…”,以获取待显示的弹幕信息。
可选地,在操作***是IOS操作***且IOS操作***的***版本属于低版本的情况下,渲染组件中可以包括UIKit,利用UIKit将弹幕信息转化为允许被渲染的目标图片对象;在IOS操作***的***版本属于高版本的情况下,渲染组件中可以包括OpenGL ES和Metal,利用OpenGL ES和Metal将弹幕信息转化为允许被渲染的目标图片对象。例如,如图5所示,弹幕信息的渲染流程包括:
S501:用户输入弹幕信息(包括文字和图片);
S502:将弹幕信息转化为允许被渲染的目标图片对象;
S503:利用渲染组件实现对目标图片对象进行渲染显示,渲染组件包括UIKit、OpenGL ES和Metal。可选地,UIKit可直接使用创建的目标图片对象进行显示上屏;OpenGLES和Metal可将目标图片对象转化成纹理对象上传至图形处理器(Graphics ProcessUnit,简称为GPU)进行渲染上屏显示。此外,Metal作为底层的渲染基础设施,由于共享内存的使用,并不会出现拷贝大的资源,开发者只需要自行负责中央处理器(CentralProcessing Unit,简称为CPU)和GPU之间的同步访问;另外Metal会预估GPU状态来避免多余的验证和编译,Metal在渲染引擎初始化过程中,一组状态被烘焙至预估渲染路径(烘焙在大型游戏开发中会大量使用),多个不同资源可以共用该渲染路径对象,无需进一步验证,使应用程序编程接口(Application Program Interface,简称为API)的消耗降到最低,大大增加每帧的绘制指令的数量。
在一个可选的实施例中,利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,包括:
S1,通过渲染组件中的应用程序编程接口将弹幕信息转化为允许被渲染的目标图片对象,其中,应用程序编程接口是操作***中的底层程序接口;
可选地,应用程序编程接口包括但不限于是UIKit,UIKit可直接使用创建的目标图片对象进行显示上屏。
在一个可选的实施例中,利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,包括:
S1,通过渲染组件中的前端框架UIKIT中的图片处理应用程序接口创建虚拟画布,将弹幕信息绘制至虚拟画布中,将虚拟画布中的弹幕信息转化为允许被渲染的目标图片对象。
可选地,在本实施例中,在操作***是IOS***时,通过IOS中的UIKit中的图片处理API将弹幕信息(图片+文字)转化成可渲染的目标图片对象Bitmap;IOS提供了处理图形图像的完整API,完整的生产可渲染Bitmap流程包括:
S1,创建虚拟画布CGContext;
S2,将用户输入的弹幕信息(文字+图片)绘制到虚拟画布上;
S3,将画布上的内容最终生成Image目标图片对象,该目标图片对象即为下一步渲染的数据来源。
通过本实施例,通过不同的渲染组件对弹幕信息进行渲染,不仅可以适用于不同的操作***,而且可以提高弹幕信息渲染的效率。
在一个可选的实施例中,根据目标图片对象进行弹幕信息的渲染显示,包括:
S1,将目标图片对象进行渲染,以显示在目标屏幕上。
在一个可选的实施例中,根据目标图片对象进行弹幕信息的渲染显示,包括:
S1,将目标图片对象转化为目标纹理对象,并将目标纹理对象进行渲染,以显示在目标屏幕上。
可选地,在本实施例中,可以利用UIKIT目标图片对象进行渲染,以显示在目标屏幕上。也可以利用OpenGL ES和Metal将目标图片对象转化为目标纹理对象,并将目标纹理对象进行渲染,以显示在目标屏幕上。
通过本实施例,通过不同的渲染组件对弹幕信息进行渲染,不仅可以适用于不同的操作***,而且可以提高弹幕信息渲染的效率。
在一个可选的实施例中,将目标图片对象进行渲染,以显示在目标屏幕上,包括:
S1,屏幕渲染组件中的UIKIT中的图片控件确定目标图片对象显示在目标屏幕上的第一显示速度;
S2,图片对象设置在确定的目标弹道上,并按照第一显示速度显示在目标屏幕上,其中,目标弹道位于目标屏幕中。
可选地,在本实施例中,利用UIKit可以将目标图片对象,使用***的图片控件UIImageView直接上屏显示,用UIImageView设置相应目标对象对应的弹道位置,从右至左开始做匀速移动动画即可。
通过本实施例中,通过UIKit对目标图片对象进行渲染,增加了渲染的速度。
在一个可选的实施例中,将目标图片对象转化为目标纹理对象,并将目标纹理对象进行渲染,以显示在目标屏幕上,包括:
S1,通过渲染组件中的应用程序编程接口Metal或者OpenGL ES确定承载目标图片对象的矩形框架;
S2,将矩形框架传入顶点着色器,其中,顶点着色器用于对目标图片对象进行图元装配,得到着色目标图片对象;
S3,将着色目标图片对象上传至片元着色器,以使片元着色器对着色目标图片对象的纹理进行处理,得到目标纹理对象,其中,对着色目标图片对象的纹理进行处理包括对着色目标图片对象中的颜色的确定;
S4,将目标纹理对象设置在确定的目标弹道上,并按照确定的第二显示速度显示在目标屏幕上,其中,目标弹道位于目标屏幕中。
可选地,由于Metal的版本和硬件限制,可以运行在iOS 8+且CPU芯片在Apple A7及以上版本的设备上,所以需要UIKit和OpenGL ES的辅助来支持其他设备的渲染实现,本实施例提供了一系列统一的对外接口,分别针对这些接口有三份实现(UIKit,OpenGL ES以及Metal);其中两个主要的特性需要说明,弹幕内容上屏控制逻辑和弹幕内容渲染过程。
在一个可选的实施例中,通过以下方式确定第二显示速度:通过渲染组件中的缓冲组件调整矩形框架上的顶点数据,以确定出第二显示速度。
可选地,在本实施例中,上述利用Metal对目标图片进行渲染的过程如图6所示,包括以下步骤:
S1,确定顶点数据,承载弹幕信息的控件的形状是矩形,有四个顶点组成;
S2,将顶点数据传入顶点着色器后,对顶点数据进行图元装配,即将传入顶点数据生成多个三角形,拼接成合适大小的矩形;光栅化阶段将生成的基本图元形状转换为一组二维的片元(Fragment),片元表示可以被渲染到屏幕上的像素,这些值是由图元的顶点信息进行插值计算得到的。
S3,这些片元接着被送到片元着色器(Fragment Shader)处理,这是从顶点数据到可渲染在设备上的像素的质变过程;
GPU使用片元着色器对传入的顶点数据和目标图片纹理,处理由光栅化阶段生成的每个片元,最终计算出每个像素的最终颜色;
S4,FrameBuffer用来存放渲染结果,混合颜色等操作;
S5,最终通过双缓冲机制将渲染结果上屏。
在本实施例中,弹幕动画的过程其实就是实时改变顶点数据,最终实现弹幕移动的效果,最后循环寻找可用弹道来实现后续弹幕内容上屏。
利用OpenGL ES渲染的方式和Metal的渲染大体一致,在此不再赘述。
在一个可选的实施例中,通过以下方式确定目标弹道:
S1,确定目标屏幕中的弹道的空闲值;
S2,将空闲值大于预设阈值的弹道确定为可用弹道;
S3,确定可用弹道的可用时间点;
S4,将与目标图片对象待显示的时间点对应的可用弹道确定为目标弹道。
可选地,在本实施例中,如图7所示,不同弹幕信息显示在不同弹道上,通过判断某个弹道上的空闲值是否大于阈值,即可判断该弹道当前是否可用于下一个弹幕,需要计算的项有空闲弹道和下一个空闲弹道可用的时间点,由于每个屏幕的高度有限,这样的数字大小计算量是非常小的。
通过本实施例,通过对弹道位置和时间的确定,可以提高弹幕信息显示的效率。
可选地,如图8所示,是不同的渲染方式在相同的大量弹幕信息的实测数据,UIKit中的各方面性能均优于OpenGL ES和现有的Metal实现,如图9所示,是本实施例中的UIKit架构,可以应用于IOS客户端环境中,可以解决主线程进行文字排版和渲染造成的卡顿。使用底层图形API自己实现高性能的多线程弹幕渲染。此外,Metal、OpenGL是较为底层的图形渲染API,操作***层的图形渲染基于此实现。
在一个可选的实施例中,所述根据所述目标图片对象进行所述弹幕信息的渲染显示,包括:
S1,利用所述渲染组件中的UIKIT将所述目标图片对象显示在目标屏幕上。
可选地,在本实施例中,UIKit可直接将创建的图片对象进行显示上屏。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述弹幕信息的显示方法的弹幕信息的显示装置。如图10所示,该装置包括:
第一获取模块1002,用于获取待显示的弹幕信息;
第一确定模块1004,用于确定上述弹幕信息的所在终端上的操作***对应的渲染组件;
第一转化模块1006,用于利用上述渲染组件将上述弹幕信息转化为允许被渲染的目标图片对象,其中,上述目标图片对象用于表示上述弹幕信息;
显示模块1008,用于根据上述目标图片对象进行上述弹幕信息的渲染显示。
可选地,上述第一转化模块,包括:
第一转化单元,用于通过上述渲染组件中的应用程序编程接口将上述弹幕信息转化为允许被渲染的目标图片对象,其中,上述应用程序编程接口是上述操作***中的底层程序接口。
可选地,上述第一转化模块,包括:
第二转化单元,用于通过上述渲染组件中的前端框架UIKIT中的图片处理应用程序接口创建虚拟画布,将上述弹幕信息绘制至上述虚拟画布中,将上述虚拟画布中的弹幕信息转化为允许被渲染的目标图片对象。
可选地,上述显示模块,包括:
第一渲染单元,用于将上述目标图片对象进行渲染,以显示在目标屏幕上。
可选地,上述第一渲染单元,包括:
第一确定子单元,用于通过上述渲染组件中的UIKIT中的图片控件确定上述目标图片对象显示在上述目标屏幕上的第一显示速度;
第一设置子单元,用于将上述目标图片对象设置在确定的目标弹道上,并按照上述第一显示速度显示在上述目标屏幕上,其中,上述目标弹道位于上述目标屏幕中。
可选地,上述第一渲染单元,包括:
第二确定子单元,用于通过上述渲染组件中的应用程序编程接口Metal或者OpenGL ES确定承载上述目标图片对象的矩形框架;
传入子单元,用于将上述矩形框架传入顶点着色器,其中,上述顶点着色器用于对上述目标图片对象进行图元装配,得到着色目标图片对象;
上传子单元,用于将上述着色目标图片对象上传至片元着色器,以使上述片元着色器对上述着色目标图片对象的纹理进行处理,得到上述目标纹理对象,其中,对上述着色目标图片对象的纹理进行处理包括对上述着色目标图片对象中的颜色的确定;
第二设置子单元,用于将上述目标纹理对象设置在确定的目标弹道上,并按照确定的第二显示速度显示在上述目标屏幕上,其中,上述目标弹道位于上述目标屏幕中。
可选地,上述第二设置子单元还用于通过以下方式确定上述第二显示速度:通过上述渲染组件中的缓冲组件调整上述矩形框架上的顶点数据,以确定出上述第二显示速度。
可选地,上述装置还用于通过以下方式确定上述目标弹道:确定上述目标屏幕中的弹道的空闲值;将上述空闲值大于预设阈值的弹道确定为可用弹道;确定上述可用弹道的可用时间点;将与上述目标图片对象待显示的时间点对应的可用弹道确定为上述目标弹道。
可选地,上述显示模块,包括:
第二转化模块,用于将上述目标图片对象转化为目标纹理对象,并将上述目标纹理对象进行渲染,以显示在目标屏幕上。
可选地,上述显示模块,包括:
显示子单元,用于利用上述渲染组件中的UIKIT将上述目标图片对象显示在目标屏幕上。
可选地,本领域普通技术人员可以理解,图11所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图11其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图11中所示更多或者更少的组件(如网络接口等),或者具有与图11所示不同的配置。
其中,存储器1102可用于存储软件程序以及模块,如本发明实施例中的弹幕信息的显示方法和装置对应的程序指令/模块,处理器1104通过运行存储在存储器1102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的弹幕信息的显示方法。存储器1102可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1102可进一步包括相对于处理器1104远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1102具体可以但不限于用于弹幕信息与目标图片对象等信息。作为一种示例,如图11所示,上述存储器1102中可以但不限于包括上述弹幕信息的显示装置中的第一获取模块1002、确定单元1104、第一确定模块1004、第一转化模块1006及显示模块1008。此外,还可以包括但不限于上述弹幕信息的显示装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1106包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1106为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:显示器1108,用于显示上述目标图片对象;和连接总线1110,用于连接上述电子装置中的各个模块部件。
根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1:获取待显示的弹幕信息;
S2:确定弹幕信息的所在终端上的操作***对应的渲染组件;
S3:利用渲染组件将弹幕信息转化为允许被渲染的目标图片对象,其中,目标图片对象用于表示弹幕信息;
S4:根据目标图片对象进行弹幕信息的渲染显示。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种弹幕信息的显示方法,其特征在于,包括:
获取待显示的弹幕信息;
确定所述弹幕信息的所在终端上的操作***对应的渲染组件;
利用所述渲染组件将所述弹幕信息转化为允许被渲染的目标图片对象,其中,所述目标图片对象用于表示所述弹幕信息;
在所述操作***的***版本的版本号低于目标版本号的情况下,通过所述渲染组件中的应用程序编程接口UIKit将所述目标图片对象进行弹幕信息的渲染显示,其中,所述渲染组件中的应用程序编程接口包括UIKit;
在所述操作***的***版本的版本号高于所述目标版本号的情况下,通过所述渲染组件中的应用程序编程接口Metal确定承载所述目标图片对象的矩形框架,其中,所述渲染组件中的应用程序编程接口包括Metal和OpenGL ES;基于确定出的承载所述目标图片对象的矩形框架进行所述弹幕信息的渲染显示。
2.根据权利要求1所述的方法,其特征在于,利用所述渲染组件将所述弹幕信息转化为允许被渲染的目标图片对象,包括:
通过所述渲染组件中的应用程序编程接口将所述弹幕信息转化为允许被渲染的目标图片对象,其中,所述应用程序编程接口是所述操作***中的底层程序接口。
3.根据权利要求1所述的方法,其特征在于,利用所述渲染组件将所述弹幕信息转化为允许被渲染的目标图片对象,包括:
通过所述渲染组件中的前端框架UIKIT中的图片处理应用程序接口创建虚拟画布,将所述弹幕信息绘制至所述虚拟画布中,将所述虚拟画布中的弹幕信息转化为允许被渲染的目标图片对象。
4.根据权利要求1所述的方法,其特征在于,在所述操作***的***版本的版本号低于目标版本号的情况下,通过所述渲染组件中的应用程序编程接口UIKit将所述目标图片对象进行弹幕信息的渲染显示,包括:
将所述目标图片对象进行渲染,以显示在目标屏幕上。
5.根据权利要求4所述的方法,其特征在于,将所述目标图片对象进行渲染,以显示在目标屏幕上,包括:
通过所述渲染组件中的UIKIT中的图片控件确定所述目标图片对象显示在所述目标屏幕上的第一显示速度;
将所述目标图片对象设置在确定的目标弹道上,并按照所述第一显示速度显示在所述目标屏幕上,其中,所述目标弹道位于所述目标屏幕中。
6.根据权利要求1所述的方法,其特征在于,基于确定出的承载所述目标图片对象的矩形框架进行所述弹幕信息的渲染显示,包括:
将所述矩形框架传入顶点着色器,其中,所述顶点着色器用于对所述目标图片对象进行图元装配,得到着色目标图片对象;
将所述着色目标图片对象上传至片元着色器,以使所述片元着色器对所述着色目标图片对象的纹理进行处理,得到目标纹理对象,其中,对所述着色目标图片对象的纹理进行处理包括对所述着色目标图片对象中的颜色的确定;
将所述目标纹理对象设置在确定的目标弹道上,并按照确定的第二显示速度显示在目标屏幕上,其中,所述目标弹道位于所述目标屏幕中。
7.根据权利要求6所述的方法,其特征在于,通过以下方式确定所述第二显示速度,包括:
通过所述渲染组件中的缓冲组件调整所述矩形框架上的顶点数据,以确定出所述第二显示速度。
8.根据权利要求5或6所述的方法,其特征在于,通过以下方式确定所述目标弹道:
确定所述目标屏幕中的弹道的空闲值;
将所述空闲值大于预设阈值的弹道确定为可用弹道;
确定所述可用弹道的可用时间点;
将与所述目标图片对象待显示的时间点对应的可用弹道确定为所述目标弹道。
9.根据权利要求1所述的方法,其特征在于,所述根据所述目标图片对象进行所述弹幕信息的渲染显示,包括:
将所述目标图片对象转化为目标纹理对象,并将所述目标纹理对象进行渲染,以显示在目标屏幕上。
10.根据权利要求1所述的方法,其特征在于,所述在所述操作***的***版本的版本号低于目标版本号的情况下,通过所述渲染组件中的应用程序编程接口UIKit将所述目标图片对象进行弹幕信息的渲染显示,包括:
利用所述渲染组件中的UIKIT将所述目标图片对象显示在目标屏幕上。
11.一种弹幕信息的显示装置,其特征在于,包括:
第一获取模块,用于获取待显示的弹幕信息;
第一确定模块,用于确定所述弹幕信息的所在终端上的操作***对应的渲染组件;
第一转化模块,用于利用所述渲染组件将所述弹幕信息转化为允许被渲染的目标图片对象,其中,所述目标图片对象用于表示所述弹幕信息;
所述显示装置,还用于在所述操作***的***版本的版本号低于目标版本号的情况下,通过所述渲染组件中的应用程序编程接口UIKit将所述目标图片对象进行弹幕信息的渲染显示,其中,所述渲染组件中的应用程序编程接口包括UIKit;在所述操作***的***版本的版本号高于所述目标版本号的情况下,通过所述渲染组件中的应用程序编程接口Metal或者OpenGL ES确定承载所述目标图片对象的矩形框架,其中,所述渲染组件中的应用程序编程接口包括Metal和OpenGL ES;基于确定出的承载所述目标图片对象的矩形框架进行所述弹幕信息的渲染显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911046855.7A CN112752131B (zh) | 2019-10-30 | 2019-10-30 | 弹幕信息的显示方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911046855.7A CN112752131B (zh) | 2019-10-30 | 2019-10-30 | 弹幕信息的显示方法和装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112752131A CN112752131A (zh) | 2021-05-04 |
CN112752131B true CN112752131B (zh) | 2023-02-10 |
Family
ID=75640807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911046855.7A Active CN112752131B (zh) | 2019-10-30 | 2019-10-30 | 弹幕信息的显示方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112752131B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872679A (zh) * | 2015-12-31 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 弹幕显示方法和装置 |
EP3264783B1 (en) * | 2016-06-29 | 2021-01-06 | Nokia Technologies Oy | Rendering of user-defined messages having 3d motion information |
CN107092643B (zh) * | 2017-03-06 | 2020-10-16 | 武汉斗鱼网络科技有限公司 | 一种弹幕渲染方法及装置 |
-
2019
- 2019-10-30 CN CN201911046855.7A patent/CN112752131B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112752131A (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108619720B (zh) | 动画的播放方法和装置、存储介质、电子装置 | |
US10311548B2 (en) | Scaling render targets to a higher rendering resolution to display higher quality video frames | |
RU2677584C1 (ru) | Использование межкадровой когерентности в архитектуре построения изображений с сортировкой примитивов на промежуточном этапе | |
CN108154548B (zh) | 图像渲染方法及装置 | |
US11711563B2 (en) | Methods and systems for graphics rendering assistance by a multi-access server | |
US20220241689A1 (en) | Game Character Rendering Method And Apparatus, Electronic Device, And Computer-Readable Medium | |
WO2022048097A1 (zh) | 一种基于多显卡的单帧画面实时渲染方法 | |
US20140292803A1 (en) | System, method, and computer program product for generating mixed video and three-dimensional data to reduce streaming bandwidth | |
CN112116692A (zh) | 模型渲染方法、装置、设备 | |
US8988434B1 (en) | Text rendering for browsers and mobile based applications | |
CN111476851B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US20240096007A1 (en) | Rendering Method, Device, and System | |
CN108389241A (zh) | 游戏场景中生成贴图的方法、装置和*** | |
CN110968962B (zh) | 基于云渲染在移动端或大屏三维展示方法及*** | |
WO2023134277A1 (zh) | 可见元素的确定方法和装置、存储介质及电子设备 | |
CN111738935B (zh) | 残影渲染方法和装置、存储介质和电子装置 | |
US10237563B2 (en) | System and method for controlling video encoding using content information | |
TW202141418A (zh) | 處理拆分渲染中的遮蔽之方法及裝置 | |
CN114463473A (zh) | 图像渲染的处理方法和装置、存储介质及电子设备 | |
CN111242838B (zh) | 模糊图像渲染方法和装置、存储介质及电子装置 | |
CN112752131B (zh) | 弹幕信息的显示方法和装置、存储介质及电子装置 | |
CN118043842A (zh) | 一种渲染格式选择方法及其相关设备 | |
CN110662099A (zh) | 用于显示弹幕的方法和装置 | |
WO2023142756A1 (zh) | 直播互动方法、装置以及*** | |
WO2022135050A1 (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40048662 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |