CN111526420A - 一种视频渲染方法、电子设备及存储介质 - Google Patents
一种视频渲染方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111526420A CN111526420A CN201910101751.5A CN201910101751A CN111526420A CN 111526420 A CN111526420 A CN 111526420A CN 201910101751 A CN201910101751 A CN 201910101751A CN 111526420 A CN111526420 A CN 111526420A
- Authority
- CN
- China
- Prior art keywords
- texture data
- video memory
- video
- data
- acquiring
- 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/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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- 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
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/265—Mixing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/278—Subtitling
Abstract
本发明实施例公开了一种视频渲染方法、电子设备及存储介质;所述方法包括:获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中。能够降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种视频渲染方法、电子设备及存储介质。
背景技术
渲染是制作动画或者静帧作品时的最后一道工序,它是使用渲染器根据场景中设置的物体的参数设置对物体进行着色的过程,渲染是制作过程中比较重要的环节。
目前,在进行视频渲染或文字渲染时,需要消耗很多的显存资源,例如,在视频中叠加多个字幕时,需要相应的使用到多块显存纹理数据,非常消耗显存资源,容易导致视频无法流畅播放,影响视频渲染效果。
发明内容
为解决上述技术问题,本发明实施例提供一种视频渲染方法、电子设备及存储介质,可降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果。
为达到上述目的,本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供了一种视频渲染方法,所述电子设备包括第一显存资源和第二显存资源,所述方法包括:
获取视频数据中目标帧所对应的第一显存纹理数据;
将所述第一显存纹理数据存储在所述第一显存资源中;
获取第一叠加字幕所对应的第二显存纹理数据;
将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;
将第一叠加纹理数据存储在第二显存资源中。
进一步的,所述将第一叠加纹理数据存储在第二显存资源中之后,还包括:
获取第二叠加字幕所对应的第三显存纹理数据;
将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;
将第二叠加纹理数据存储在第一显存资源中。
进一步的,所述获取视频数据中目标帧所对应的第一显存纹理数据,包括:
获取所述视频数据;
根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
确定所述目标帧所对应的第一显存纹理数据。
进一步的,所述获取第一叠加字幕所对应的第二显存纹理数据,包括:
将第一叠加字幕渲染到第一视图上;
获取所述第一视图的显存纹理数据;
将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
第二方面,本发明实施例提供了一种电子设备,包括:第一显存资源和第二显存资源,所述电子设备还包括:
第一获取模块,用于获取视频数据中目标帧所对应的第一显存纹理数据;
第一存储模块,用于将所述第一显存纹理数据存储在所述第一显存资源中;
第二获取模块,用于获取第一叠加字幕所对应的第二显存纹理数据;
第一叠加模块,用于将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;
第二存储模块,用于将第一叠加纹理数据存储在第二显存资源中。
进一步的,所述电子设备还包括:
第三获取模块,用于获取第二叠加字幕所对应的第三显存纹理数据;
第二叠加模块,用于将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;
第三存储模块,用于将第二叠加纹理数据存储在第一显存资源中。
进一步的,所述第一获取模块,包括:
第一获取子模块,用于获取所述视频数据;
第二获取子模块,用于根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
第一确定子模块,用于确定所述目标帧所对应的第一显存纹理数据。
进一步的,所述第二获取模块,包括:
叠加子模块,用于将第一叠加字幕渲染到第一视图上;
第三获取子模块,用于获取所述第一视图的显存纹理数据;
第二确定子模块,用于将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
第三方面,本发明实施例提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的视频渲染方法。
第四方面,本发明实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的视频渲染方法。
本发明实施例提出了一种视频渲染方法、电子设备及存储介质,通过获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中。因此,和现有技术相比,本发明实施例能够降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
附图说明
图1为本发明实施例提供的视频渲染方法的一流程示意图;
图2为本发明实施例提供的视频渲染方法的另一流程示意图;
图3为本发明实施例提供的视频渲染方法的又一流程示意图;
图4为本发明实施例提供的语音评论装置的再一流程示意图;
图5为本发明实施例提供的电子设备的一结构示意图;
图6为本发明实施例提供的电子设备的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
图1为本发明实施例提供的视频渲染方法的流程示意图。如图1所示,本实施例提供的视频渲染方法,应用于电子设备,所述电子设备包括第一显存资源和第二显存资源,所述方法包括以下步骤:
步骤101、获取视频数据中目标帧所对应的第一显存纹理数据。
具体的,原始视频数据包括音频流和视频流,将原始视频数据解析获得音频流和视频流。将音频流解码得到音频数据,将视频流解码得到视频数据,音频数据通过音频播放库进行播放。
进一步的,所述获取视频数据中目标帧所对应的第一显存纹理数据,包括:
获取所述视频数据;
根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
确定所述目标帧所对应的第一显存纹理数据。
对视频流解码获得的视频数据为YUV格式,其中"Y"表示明亮度,也就是灰阶值;而"U"和"V"表示的则是色度,用于描述影像色彩及饱和度,用于指定像素的颜色。
视频数据中包括多个视频帧,每一个视频帧均对应有一个显存纹理数据,为便于描述,目标帧对应的显存纹理数据为第一显存纹理数据。目标帧即视频帧中需要叠加字幕的帧。
步骤102、将所述第一显存纹理数据存储在所述第一显存资源中。
具体的,第一显存资源和第二显存资源均是在目标帧上进行字幕叠加时所需要使用到的显存资源,即一显存资源和第二显存资源可用于存储显存纹理数据或者叠加纹理数据。
目标帧对应的第一显存纹理数据需要参与到字幕叠加过程,将第一显存纹理数据存储在第一显存资源中。
步骤103、获取第一叠加字幕所对应的第二显存纹理数据。
第一叠加字幕即需要叠加到目标帧中的字幕。第二显存纹理数据即第一叠加字幕所对应的显存纹理数据。
进一步的,所述获取第一叠加字幕所对应的第二显存纹理数据,包括:
将第一叠加字幕渲染到第一视图上;
获取所述第一视图的显存纹理数据;
将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
具体的,第一叠加字幕可为包括png格式的图片,该图片包括字幕。
步骤104、将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据。
第一叠加纹理数据为第一显存纹理数据与第二显存纹理数据进行叠加后获得的纹理数据。
步骤105、将第一叠加纹理数据存储在第二显存资源中。
本实施例中,获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中。和现有技术相比,本发明实施例提出的视频渲染方法能够降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
进一步的,如图2所示,所述将第一叠加纹理数据存储在第二显存资源中之后,还包括:
步骤106、获取第二叠加字幕所对应的第三显存纹理数据。
第一叠加字幕与第二叠加字幕可为不同的字幕,也可为相同的字幕,在此不做限定。
第三显存纹理数据即第二叠加字幕所对应的显存纹理数据。
步骤107、将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据。
第二叠加纹理数据为第三显存纹理数据与第一叠加纹理数据进行叠加后获得的纹理数据。
步骤108、将第二叠加纹理数据存储在第一显存资源中。
本实施例中,获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中;获取第二叠加字幕所对应的第三显存纹理数据;将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;将第二叠加纹理数据存储在第一显存资源中。和现有技术相比,本发明实施例提出的视频渲染方法,先后获得的叠加纹理数据可交替存放在第一显存资源和第二显存资源中,节省了显存资源,降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
以下采用具体实施例对上述过程进行详细描述。
图3为视频渲染时的模块图,如图3所示,playerCore为视频播放模块,实现视频的播放功能,renderCore负责滤镜实现和文字叠加的特效功能,playerCore和renderCore包括在glsurfaceView中,glsurfaceView是用java实现的封装类,从fileReader模块开始,该模块负责读入本地视频文件(即原始视频数据),然后通过demux解析获得音频流和视频流,对音频流和视频流分别解码。音频流解码后获得音频数据,音频数据通过audiotrack播放(audiotrack是android上的一个音频播放库)。
对视频流进行解码,得到YUV格式的视频数据,将该视频数据通过surfaceview模块进行渲染,surfaceview模块的主要功能是定义视频数据在显存中的显示逻辑,图中的texture id是经过surfaceview模块渲染的每一帧的显存索引,通过该索引可以获得显存纹理中的数据,实现如滤镜和叠加文字的功能。滤镜的功能实现的就是按一定规律修改显存纹理中的数据。将文字图片(即字幕图片)叠加到视频上时,先把png格式的文字图片渲染到一个view(视图)上,根据该view的texture id(即显存索引)和视频渲染(即目标帧)的textureid(即显存索引),用opengles的blend模式叠加这两个显存索引指向的纹理,获得叠加纹理数据。
如图4所示,图4中展示了滤镜特效多层叠加流程。图5中,“图片1”表示视频数据;“图片2”表示叠加了字幕1的图片;“图片3”表示叠加了字幕1和字幕2的图片。单个字幕叠加在gpu中都是一种flush过程,两个gltexture(gltexture1和gltexture2)在不同的文字叠加flush过程中可以交替使用。图4中添加第一个字幕时,gltexture1是指向视频源的纹理,externTexture是指向单个文字图片的纹理,两个纹理在一次叠加过程后,结果视频会生成在gltexture2指向的纹理上,而gltexture2可以做为下一张文字叠加的视频源输入纹理,然后重复第一次的文字叠加流程,生成的视频纹理存储在gltexture1所指向的纹理上,多个字幕的叠加重复上述过程,gltexture1和gltexture2达到了交替使用的效果,节省了显存资源,提高渲染效率。
图5为本发明实施例提供的电子设备的结构示意图。如图5所示,本实施例提供一种电子设备200,包括:第一显存资源和第二显存资源,所述电子设备200还包括:
第一获取模块201,用于获取视频数据中目标帧所对应的第一显存纹理数据;
第一存储模块202,用于将所述第一显存纹理数据存储在所述第一显存资源中;
第二获取模块203,用于获取第一叠加字幕所对应的第二显存纹理数据;
第一叠加模块204,用于将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;
第二存储模块205,用于将第一叠加纹理数据存储在第二显存资源中。
本实施例中,获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中。和现有技术相比,本发明实施例提出的视频渲染方法能够降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
进一步,所述电子设备200还包括:
第三获取模块,用于获取第二叠加字幕所对应的第三显存纹理数据;
第二叠加模块,用于将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;
第三存储模块,用于将第二叠加纹理数据存储在第一显存资源中。
本实施例中,获取视频数据中目标帧所对应的第一显存纹理数据;将所述第一显存纹理数据存储在所述第一显存资源中;获取第一叠加字幕所对应的第二显存纹理数据;将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;将第一叠加纹理数据存储在第二显存资源中;获取第二叠加字幕所对应的第三显存纹理数据;将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;将第二叠加纹理数据存储在第一显存资源中。和现有技术相比,本发明实施例提出的视频渲染方法,先后获得的叠加纹理数据可交替存放在第一显存资源和第二显存资源中,节省了显存资源,降低视频渲染时对显存资源的消耗,使得视频播放流畅,提高渲染效果,从而提高用户体验。
进一步,所述第一获取模块201,包括:
第一获取子模块,用于获取所述视频数据;
第二获取子模块,用于根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
第一确定子模块,用于确定所述目标帧所对应的第一显存纹理数据。
进一步,所述第二获取模块203,包括:
叠加子模块,用于将第一叠加字幕渲染到第一视图上;
第三获取子模块,用于获取所述第一视图的显存纹理数据;
第二确定子模块,用于将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
上述电子设备可执行图1-图4所示实施例的方法,具备执行方法相应的功能模块和有益效果,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的视频渲染方法。
图6为本发明实施例提供的电子设备的结构示意图。图6示出了适于用来实现本发明实施方式的示例性电子设备的框图。如图6所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的视频渲染方法。
本发明实施例的计算机可读存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种视频渲染方法,其特征在于,应用于电子设备,所述电子设备包括第一显存资源和第二显存资源,所述方法包括:
获取视频数据中目标帧所对应的第一显存纹理数据;
将所述第一显存纹理数据存储在所述第一显存资源中;
获取第一叠加字幕所对应的第二显存纹理数据;
将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;
将第一叠加纹理数据存储在第二显存资源中。
2.根据权利要求1所述的方法,其特征在于,所述将第一叠加纹理数据存储在第二显存资源中之后,还包括:
获取第二叠加字幕所对应的第三显存纹理数据;
将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;
将第二叠加纹理数据存储在第一显存资源中。
3.根据权利要求1所述的方法,其特征在于,所述获取视频数据中目标帧所对应的第一显存纹理数据,包括:
获取所述视频数据;
根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
确定所述目标帧所对应的第一显存纹理数据。
4.根据权利要求1所述的方法,其特征在于,所述获取第一叠加字幕所对应的第二显存纹理数据,包括:
将第一叠加字幕渲染到第一视图上;
获取所述第一视图的显存纹理数据;
将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
5.一种电子设备,其特征在于,包括:第一显存资源和第二显存资源,所述电子设备还包括:
第一获取模块,用于获取视频数据中目标帧所对应的第一显存纹理数据;
第一存储模块,用于将所述第一显存纹理数据存储在所述第一显存资源中;
第二获取模块,用于获取第一叠加字幕所对应的第二显存纹理数据;
第一叠加模块,用于将所述第一显存纹理数据与所述第二显存纹理数据进行叠加,以获得第一叠加纹理数据;
第二存储模块,用于将第一叠加纹理数据存储在第二显存资源中。
6.根据权利要求5所述的电子设备,其特征在于,所述电子设备,还包括:
第三获取模块,用于获取第二叠加字幕所对应的第三显存纹理数据;
第二叠加模块,用于将所述第三显存纹理数据与所述第一叠加纹理数据进行叠加,以获得第二叠加纹理数据;
第三存储模块,用于将第二叠加纹理数据存储在第一显存资源中。
7.根据权利要求5所述的电子设备,其特征在于,所述第一获取模块,包括:
第一获取子模块,用于获取所述视频数据;
第二获取子模块,用于根据所述视频数据,获得所述视频数据中各帧的显存纹理数据;
第一确定子模块,用于确定所述目标帧所对应的第一显存纹理数据。
8.根据权利要求5所述的电子设备,其特征在于,所述第二获取模块,包括:
叠加子模块,用于将第一叠加字幕渲染到第一视图上;
第三获取子模块,用于获取所述第一视图的显存纹理数据;
第二确定子模块,用于将所述第一视图的显存纹理数据确定为所述第一叠加字幕所对应的第二显存纹理数据。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至4中任一项所述的视频渲染方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至4中任一项所述的视频渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101751.5A CN111526420A (zh) | 2019-02-01 | 2019-02-01 | 一种视频渲染方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910101751.5A CN111526420A (zh) | 2019-02-01 | 2019-02-01 | 一种视频渲染方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111526420A true CN111526420A (zh) | 2020-08-11 |
Family
ID=71900031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910101751.5A Pending CN111526420A (zh) | 2019-02-01 | 2019-02-01 | 一种视频渲染方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111526420A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117676053A (zh) * | 2024-01-31 | 2024-03-08 | 成都华栖云科技有限公司 | 一种动态字幕渲染方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110044662A1 (en) * | 2002-11-15 | 2011-02-24 | Thomson Licensing S.A. | Method and apparatus for composition of subtitles |
CN103700385A (zh) * | 2012-09-27 | 2014-04-02 | 深圳市快播科技有限公司 | 媒体播放器和播放方法、硬件加速下的视频的后处理方法 |
CN108255568A (zh) * | 2018-02-11 | 2018-07-06 | 深圳创维数字技术有限公司 | 一种终端界面显示方法及装置、终端、存储介质 |
CN108885775A (zh) * | 2016-04-05 | 2018-11-23 | 华为技术有限公司 | 一种显示方法及终端 |
-
2019
- 2019-02-01 CN CN201910101751.5A patent/CN111526420A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110044662A1 (en) * | 2002-11-15 | 2011-02-24 | Thomson Licensing S.A. | Method and apparatus for composition of subtitles |
CN103700385A (zh) * | 2012-09-27 | 2014-04-02 | 深圳市快播科技有限公司 | 媒体播放器和播放方法、硬件加速下的视频的后处理方法 |
CN108885775A (zh) * | 2016-04-05 | 2018-11-23 | 华为技术有限公司 | 一种显示方法及终端 |
CN108255568A (zh) * | 2018-02-11 | 2018-07-06 | 深圳创维数字技术有限公司 | 一种终端界面显示方法及装置、终端、存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117676053A (zh) * | 2024-01-31 | 2024-03-08 | 成都华栖云科技有限公司 | 一种动态字幕渲染方法及系统 |
CN117676053B (zh) * | 2024-01-31 | 2024-04-16 | 成都华栖云科技有限公司 | 一种动态字幕渲染方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9355493B2 (en) | Device and method for compositing video planes | |
CN107241646B (zh) | 多媒体视频的编辑方法及装置 | |
US8159505B2 (en) | System and method for efficient digital video composition | |
CN109729417B (zh) | 一种视频透明播放处理方法、智能电视及存储介质 | |
US9077970B2 (en) | Independent layered content for hardware-accelerated media playback | |
CN111899322B (zh) | 视频处理方法、动画渲染sdk和设备及计算机存储介质 | |
CN103617027B (zh) | 基于安卓系统的图像渲染引擎构建方法及系统 | |
CN109788212A (zh) | 一种分段视频的处理方法、装置、终端和存储介质 | |
CN109672902A (zh) | 一种视频抽帧方法、装置、电子设备和存储介质 | |
CN106651999B (zh) | 帧动画加载加速方法及装置 | |
CN103873915A (zh) | 用于连接片上系统处理器和外部处理器的系统和方法 | |
CN107027068A (zh) | 渲染方法、解码方法、播放多媒体数据流的方法及装置 | |
CN107610207A (zh) | 一种生成gif图片的方法、装置及系统 | |
CN110727825A (zh) | 动画播放的控制方法、装置、服务器和存储介质 | |
US10636178B2 (en) | System and method for coding and decoding of an asset having transparency | |
CN114598937A (zh) | 动画视频生成、播放方法及装置 | |
CN111526420A (zh) | 一种视频渲染方法、电子设备及存储介质 | |
CN111787240A (zh) | 视频生成方法、装置和计算机可读存储介质 | |
CN106412718A (zh) | 一种字幕在3d空间中的渲染方法及其装置 | |
CN110582021B (zh) | 信息处理方法及装置、电子设备和存储介质 | |
CN110708591B (zh) | 一种图像处理方法、装置及电子设备 | |
CN110769241A (zh) | 视频帧处理方法、装置、用户端及存储介质 | |
CN113055681B (zh) | 视频解码显示方法,装置,电子设备及存储介质 | |
CN112954452B (zh) | 视频生成方法、装置、终端及存储介质 | |
CN115391692A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200811 |