移动终端中的直播画面渲染方法、装置和存储介质与流程

文档序号:16776389发布日期:2019-02-01 18:45阅读:372来源:国知局
移动终端中的直播画面渲染方法、装置和存储介质与流程

本发明涉及数据处理领域,具体而言,涉及一种移动终端中的直播画面渲染方法、装置和存储介质。



背景技术:

目前,随着视频应用的发展,通常需要根据产品的特定需求,在视频的原生画面上做一些额外处理,比如,添加水印,在视频上合成一个水印纹理,添加游戏/主播信息、机械动态的增加功能等,以实现产品的特定效果。

上述方法虽然可以实现对视频的原生画面进行额外处理,但是对不同尺寸的视频,需要额外进行处理;另外,与产品需求强相关,当需求变更时,需要同步大幅修改,不够自动化;并且产品在迭代时,比如,在调整布局时,影响区域过大,不利于拓展,存在对图像进行渲染的效率低的问题。

针对现有技术中对图像进行渲染的效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明的主要目的在于提供一种移动终端中的直播画面渲染方法、装置和存储介质。以至少解决对图像进行渲染的效率低的技术问题。

为了实现上述目的,根据本发明的一个方面,提供了一种移动终端中的直播画面渲染方法。该方法包括:根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域;获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式;基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域;将第二目标纹理渲染至第二区域中。

可选地,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理包括:在目标模式为第一目标模式的情况下,对第一目标纹理按照第一目标比例进行调整,得到第三目标纹理,其中,第三目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,且第三目标纹理在目标画布上对应的区域大于等于第一区域;将第一区域确定为第二区域,并按照第二区域的尺寸信息,从第三目标纹理中截取第二目标纹理,其中,第二目标纹理的尺寸信息与第二区域的尺寸信息相同。

可选地,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理包括:在目标模式为第二目标模式的情况下,对第一目标纹理按照第二目标比例进行调整,得到第二目标纹理,其中,第二目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,第二目标纹理在目标画布上对应的区域为第二区域,且第二区域在第一区域中居中。

可选地,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,该方法还包括:在目标模式为第一目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息;将第二位置信息所指示的区域确定为第二区域。

可选地,在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息之前,该方法还包括:根据目标画布对应的区域的尺寸信息和第一区域在目标画布上的第三位置信息,确定第一区域的尺寸信息,其中,目标画布对应的区域包括第一区域。

可选地,第一位置信息和第二位置信息由目标坐标轴上的坐标表示,目标画布包括目标坐标轴。

可选地,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,该方法还包括:在目标模式为第二目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一区域的第四位置信息进行调整,得到第五位置信息;将第五位置信息所指示的区域确定为第二区域。

可选地,在将第二目标纹理渲染至第二区域中之后,该方法还包括:对直播模板进行渲染,其中,直播模板用于显示目标视频的指示信息,直播模板上与第一区域重合的区域为透明区域。

可选地,在将第二目标纹理渲染至第二区域中之后,该方法还包括:在目标画布上确定与目标视频区域对应的第三区域,其中,第三区域为待渲染的区域,与第一区域重叠,且小于第一区域;获取与第三区域对应的目标模式;基于目标模式,对第四目标纹理进行调整,得到第五目标纹理,其中,第四目标纹理为待渲染到第三区域的渲染内容,第五目标纹理与第四区域相匹配,第四区域位于第三区域内且第四区域小于等于第三区域;将第五目标纹理渲染至第四区域中。

可选地,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理之前,该方法还包括:获取与第一区域的类型对应的第一目标纹理。

可选地,通过目标接口获取与第一区域对应的目标模式,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,将第二目标纹理渲染至第二区域中,其中,目标接口为预先配置的与第一区域对应的接口。

为了实现上述目的,根据本发明的另一方面,还提供了一种移动终端中的直播画面渲染装置。该装置包括:确定单元,用于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域;获取单元,用于获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式;调整单元,用于基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域;渲染单元,用于将第二目标纹理渲染至第二区域中。

为了实现上述目的,根据本发明的另一方面,还提供了一种存储介质。该存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行本发明实施例的方法。

为了实现上述目的,根据本发明的另一方面,还提供了一种电子装置。该电子装置包括存储器和处理器,其特征在于,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行本发明实施例的方法。

通过本发明,采用根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域;获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式;基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域;将第二目标纹理渲染至第二区域中。由于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与所述目标视频区域对应的一个区域,框架内部可根据与区域对应的目标模式自动将与区域对应的纹理渲染至区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,在需求变更时,需要额外大幅度修改,解决了对图像进行渲染的效率低的问题,进而达到了提高对图像进行渲染的效率的技术效果。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明实施例的一种直播画面渲染方法的移动终端的硬件结构框图;

图2是根据本发明实施例的一种移动终端中的直播画面渲染方法的流程图;

图3是根据本发明实施例的一种纹理区域坐标的示意图;

图4是根据本发明实施例的一种区域顶点坐标的示意图;

图5是根据本发明实施例的一种区域的示意图;

图6是根据本发明实施例的一种区域实际效果的示意图;

图7是根据本发明实施例的一种比例填充模式和等比例适配模式的对比示意图;

图8是根据本发明实施例的一种纹理坐标的示意图;

图9是根据本发明实施例的一种顶点坐标的示意图;

图10是根据本发明实施例的一种渲染模板的使用场景的示意图;以及

图11是根据本发明实施例的一种移动终端中的直播画面渲染装置的示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种直播画面渲染方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,在可选的实施例中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(networkinterfacecontroller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radiofrequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。

在本实施例中提供了一种运行于上述移动终端的直播画面渲染方法。图2是根据本发明实施例的一种移动终端中的直播画面渲染方法的流程图。如图2所示,该方法包括以下步骤:

步骤s202,根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域。

在本发明上述步骤s202提供的技术方案中,根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域。

随着直播需求的增多,直播画面可以包含主播/游戏等相关信息。该实施例的直播模板可以为一个图片,可以包括主播独有的信息,比如,包括主播的昵称、主播标识(id)、使用的设备名称、游戏名称等,从而丰富了直播画面。在可选的实施例中,该实施例的直播模板还可以进行编辑,比如,在直播模板上根据需求编辑相应文本,重新生成模板图片,从而为主播提供更多自主设置信息的方式。

该实施例的直播模板上有预设的目标视频区域,该目标视频区域可以为透明区域,用于嵌入预设的目标视频的画面,该目标视频的画面为直播画面,可以包括视频画面、摄像头画面等,也即,目标视频区域可以为直播模板上的视频画面区域、摄像头画面区域等。该实施例的直播模板信息可以包括直播模板自身的区域坐标信息,还可以包括上述目标视频区域的坐标信息,其中,直播模板自身的区域坐标信息可以用于确定直播模板在目标画布上的位置,该直播模板的区域可以铺满整个目标画布,目标视频区域的坐标信息可以用于确定目标视频区域在直播模板上的位置。

根据直播模板信息确定预设的目标视频区域,可以根据目标视频区域的坐标信息来确定预设的目标视频区域,进而在目标画布上确定与目标视频区域对应的第一区域,可以将目标画布上与目标视频区域重合的区域确定为第一区域,也即,目标视频区域用于控制目标画布上的第一区域,该第一区域为待渲染的区域,比如,目标视频区域为透明区域,直播模板上的透明区域的信息用于控制渲染区域的坐标。

该实施例的目标视频为需要在原生画面上待进行额外处理的视频,可以为移动终端中的直播视频,比如,为游戏视频等。该实施例在目标视频的目标画布上进行渲染。在可选的实施例中,对于视频,该画布可以为视频帧,对于预览,该目标画布可以为屏幕,在直播场景中,视频与预览可以同时存在,其中,预览具有预览尺寸,为摄像头数据的区域的渲染区域尺寸,比如,在目标视频(1920*1080)中的500*500区域中渲染摄像头输出的1280*720画面,则500*500为与预览画面的预览尺寸,而1280*720为摄像头的输出尺寸(即摄像头输出的分辨率)。

在可选的实施例中,该实施例的目标画布可以在横轴(-1,1),纵轴(1,-1)的区间中,并在这个区间内,将目标画布划分为不同的区域,每个区域根据其在目标画布中的位置,可以确定区域坐标,也即,确定区域顶点坐标,该顶点坐标的区间为横轴(-1,1),纵轴(1,-1),由横轴(-1,1),纵轴(1,-1)所指示的区域,也即显示区域。在可选的实施例中,目标画布上各区域的渲染顶点坐标可以为各区域的区域坐标,也即,各区域在视频中区域的位置,可以映射到一个横轴(-1,1),纵轴(-1,1)的区域坐标。在可选的实施例中,每个区域还有对应的类型,比如,为摄像头区域类型、录屏区域类型、图片区域类型等,此处不做任何限制。

在可选的实施例中,区域顶点坐标的横轴取值范围为(-1,1),纵轴取值范围为(1,-1),记区域顶点坐标为xver=(xv-left,xv-right),yver=(yv-top,yv-bottom)。其中,xver用于表示顶点横坐标区域,xv-left用于表示横坐标区域最左侧x坐标,xv-right用于表示横坐标区域最右侧x坐标,yv用于表示顶点纵坐标区域,yv-top用于表示顶点纵坐标区域最上侧y坐标,yv-bottom用于表示顶点纵坐标区域最下侧y坐标。

该实施例可以将每一个独立的渲染对象封装为上述目标画布上的一个区域,也即,渲染区域,比如,将摄像头画面作为目标画布上的一个区域、将水印作为目标画布上的一个区域等,不同的区域之间可以重叠,每个区域可以各自渲染不同的内容。

该实施例在目标画布上确定与目标视频区域对应的第一区域,该第一区域为目标画布上待进行渲染的区域,也即,渲染对象,可以将渲染内容渲染到该第一区域中,其中,渲染内容可以为图片、摄像头数据等。其中,摄像头数据可以为摄像头输出尺寸,包括摄像输出的分辨率。该实施例可以通过上述的顶点坐标来确定该第一区域在目标画布上的位置区间,也即,可以将渲染对象渲染到目标画布的该位置区间中。

举例而言,第一区域为摄像头区域,摄像头画面占据目标视频的右侧横向1/3区域,占据纵向完整区域,则摄像头画面的区域坐标为x(1/3,1),y(1,-1)。

在可选的实施例中,该第一区域与直播模板上的透明区域重合,也即,通过直播模板上的透明区域的区域坐标可以确定第一区域的区域坐标。其中,直播模板可以为直播模板,丰富目标视频的画面内容,可以在直播模板上添加主播独有的信息,只需要提供入口,在直播模板上编辑相应文本,则生成模板图片。在可选的实施例中,考虑到直播模板的区域有时需覆盖在第一区域上,需要保证模板区域的渲染顺序在第一区域之后。

步骤s204,获取与第一区域对应的目标模式。

在本发明上述步骤s204提供的技术方案中,在目标视频的目标画布上确定第一区域之后,获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式。

在该实施例中,对区域进行渲染可以有不同的目标模式,该目标模式可以包括等比例填充模式(aspectfill)和等比例适配模式(aspectfit)。其中,等比例填充模式为按照渲染内容的原有比例伸缩以填充第一区域;等比例适配模式为按照渲染内容的原有比例伸缩适配渲染区域,渲染内容在渲染区域内最大程度地完整居中显示。

在对第一在目标视频的目标画布上确定第一区域之后,获取与第一区域对应的目标模式。该第一区域的目标模式可以预先在框架中设定好。

步骤s206,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理。

在本发明上述步骤s206提供的技术方案中,在获取与第一区域对应的目标模式之后,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域。

在该实施例中,纹理为渲染到目标画布上的区域的渲染内容,也即,目标画布上的区域对应一个纹理,纹理完整的坐标区域为横轴(0,1),纵轴(0,1),记纹理坐标xtex=(xt-left,xt-right),ytex=(yt-top,yt-bottom)。其中,xtex用于表示纹理横坐标区域,xt-left用于表示纹理横坐标区域最左侧x坐标值,xt-right用于表示纹理横坐标区域最右侧x坐标值,ytex用于表示纹理纵坐标区域,yt-top用于表示纹理纵坐标区域最上侧y坐标值,yt-bottom用于表示纹理纵坐标区域最下侧y坐标值。

该实施例待渲染到第一区域的渲染内容为第一目标纹理,该第一目标纹理可以是图片、摄像头数据等,该摄像头数据包括摄像头的输出尺寸(即摄像头输出的分辨率)。

该实施例的第一目标纹理具有纹理坐标,用于指示第一目标纹理的位置,在渲染时将纹理坐标区域里的渲染内容渲染到目标画布上的第一区域中。

该实施例基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,可以基于等比例填充模式对第一目标纹理的宽高按照等比例伸缩以填充渲染区域,可以选取第一目标纹理中宽高较小的进行缩放,得到第二目标纹理,以将该第二目标纹理填充渲染区域。该实施例还可以基于等比例适配模式对第一目标纹理的宽高等比例伸缩以适配渲染区域,可以选取第一目标纹理中宽高较大的进行缩放,得到第二目标纹理,以将该第二目标纹理在渲染区域内最大程度的完整显示。因而该实施例根据第一区域以及目标模式可以确定最终的渲染内容。

该实施例的第二目标纹理为待渲染至第一区域中的渲染内容,可以与第二区域相匹配,该第二区域为第二目标纹理在目标画布上最终所占据的区域,小于等于第一区域。比如,在目标模式为等比例填充模式的情况下,第二区域和第一区域可以相等,在目标模式为等比例适配模式的情况下,第二区域可以小于第一区域。

步骤s208,将第二目标纹理渲染至第二区域中。

在本发明上述步骤s208提供的技术方案中,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理之后,将第二目标纹理渲染至第二区域中,从而在第二区域中显示第二目标纹理,比如,显示摄像头画面、游戏投屏画面等。

在该实施例中,目标视频的场景需要支持预览与推流,由于硬件设备差异,预览画面尺寸与目标视频尺寸会存在不一致的情况,就需要分别对预览以及推流视频计算区域坐标

举例而言,预览画面尺寸是1920*960,目标视频的尺寸是1280*720,要求在顶点坐标为xver=(0,1),yver=(1,-1)指示的区域的右半侧区域显示摄像头画面。则在预览画面中,摄像头区域对应的区域大小为960*960,高宽比为1:1,在目标视频中,摄像头区域对应的区域大小为640*720,高宽比为8:9。这样两者渲染区域的比例不一致因此对于不同比例尺寸的预览和目标视频,在计算区域顶点坐标和纹理坐标时,需要分别按照上述流程计算一次。

该实施例为视频的区域渲染提供了一种自动化合成的框架,通过直播模板丰富了直播画面,可以为主播提供主播更多自主设置信息方式,这样随着视频需求的迭代,在直播模板上添加与需求相关的信息,比如,在直播模板上添加主播独有的信息,只需要通过编辑入口,在直播模板上编辑相应文本,重新生成直播模板的图片即可,而框架内部并不关心直播模板的图片的具体内容,这样在产品类型拓展上,比如,在游戏类型拓展上,新增游戏,只需要生成相应的游戏的直播模板的图片(美术资源),并设置目标视频区域的坐标即可,从而避免了在产品需求更改时,需要同步大幅度修改,在产品迭代过程中(如在布局调整时),影响区域过大。另外,该实施例在需要增加不同图片的效果,或者需要合成更多的图片时,只需要在目标画布上增加一个区域即可,框架内部可根据区域信息自动处理,其中,区域信息包括区域的顶点区域坐标、区域类型、目标模式,区域类型包括摄像头区域、录屏区域、图片区域等,从而实现了在移动直播中按照拓展需求进行拓展,实现了直播画面的合成与加工自动化处理的目的。

通过上述步骤s202至步骤s208,采用根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域;获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式;基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域;将第二目标纹理渲染至第二区域中。由于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与所述目标视频区域对应的一个区域,框架内部可根据与区域对应的目标模式自动将与区域对应的纹理渲染至区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,在需求变更时,需要额外大幅度修改,解决了对图像进行渲染的效率低的问题,进而达到了提高对图像进行渲染的效率的技术效果。

作为一种可选的实施方式,步骤s206,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理包括:在目标模式为第一目标模式的情况下,对第一目标纹理按照第一目标比例进行调整,得到第三目标纹理,其中,第三目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,且第三目标纹理在目标画布上对应的区域大于等于第一区域;将第一区域确定为第二区域,并按照第二区域的尺寸信息,从第三目标纹理中截取第二目标纹理,其中,第二目标纹理的尺寸信息与第二区域的尺寸信息相同。

在该实施例中,目标模式包括第一目标模式,可以确定与第一区域对应的第一目标模式,对第一目标纹理的宽高按照第一目标比例进行调整,得到第三目标纹理,该第三目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,且第三目标纹理在目标画布上对应的区域大于等于第一区域。其中,在对第一目标纹理的宽高进行调整时,可以选取第一目标纹理的宽高中值较小的一个为调整对象,第一目标比例使得第三目标纹理的宽高中值较小的一个与第一区域的宽高中的一个相同,使得第三目标纹理的宽高中值较小的可以在第一区域中完全显示、且填充在第一区域中。

在可选的实施例中,在第一目标模式下,将上述第一区域确定为第二区域,该第二区域为最终渲染的区域对象。按照第二区域的尺寸信息,从第三目标纹理中截取出第二目标纹理,该第二目标纹理的尺寸信息与第二区域的尺寸信息相同,也即,第三目标纹理超出第二区域的部分会被裁减掉,这样将第一目标纹理在按照第一目标比例调整之后,只有在水平或者垂直方向是完整的,而另一个方向超出第二区域的部分会被裁剪,从而使得第三目标纹理可以填充在第二区域中。其中,第二区域的尺寸信息包括第二区域的宽高尺寸信息,第二目标纹理的尺寸信息包括第二目标纹理的宽高尺寸信息。

在可选的实施例中,上述第一目标模式为等比例填充模式。

作为一种可选的实施方式,步骤s206,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理包括:在目标模式为第二目标模式的情况下,对第一目标纹理按照第二目标比例进行调整,得到第二目标纹理,其中,第二目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,第二目标纹理在目标画布上对应的区域为第二区域,且第二区域在第一区域中居中。

在该实施例中,目标模式包括第二目标模式,可以确定与第一区域对应的第二目标模式,对第一目标纹理的宽高按照第二目标比例进行调整,直接得到第二目标纹理,该第二目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,第二目标纹理在目标画布上对应的区域为第二区域,且第二区域在第一区域中居中。其中,在对第一目标纹理的宽高按照第二目标比例进行调整时,可以以第一目标纹理的宽高中值较大的一个为调整对象,使得第二目标纹理的宽高中值较大的一个与第一区域的宽高中的一个相同,第二目标比例使得第二目标纹理对应的第二区域在第一区域内最大程度的完整显示。在第一目标纹理的高宽比与第一区域的高宽比不同时,第一区域无法被第二区域覆盖,会出现留白。其中,第二区域为第二目标纹理最终渲染的区域对象。

在可选的实施例中,该实施例的第二目标模式为等比例适配模式。

作为一种可选的实施方式,在步骤s206,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,该方法还包括:在目标模式为第一目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息;将第二位置信息所指示的区域确定为第二区域。

在该实施例中,第一区域的尺寸信息可以为第一区域的宽高尺寸信息,比如,为宽wrect、高hrect。第一目标纹理的尺寸信息可以为第一目标纹理的宽wtex、高htex。第一目标纹理的第一位置信息为横轴(0,1),纵轴(1,0)。

在目标模式为第一目标模式,且第一目标纹理的高宽比与第一区域的高宽比不一致的情况下,需要截取对第一目标纹理调整后的目标纹理的部分纹理进行展示。可以按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息。

在可选的实施例中,当第一目标纹理的高宽比大于第一区域的高宽比时,计算裁剪比例,比如,当htex/wtex>hrect/wrect时,裁剪比例yt-ratio=(1-(hrect/wrect)/(htex/wtex))/2(已进行归一化),则第二位置信息横轴(0,1),纵轴(yt-top=1–yt-ratio,yt-bottom=yt-ratio)。

在可选的实施例中,当第一目标纹理的高宽比小于等于第一区域的高宽比时,计算裁剪比例,比如,当htex/wtex<=hrect/wrect时,裁剪比例xt-ratio=(1-(htex/wtex)/(hrect/wrect))/2(已进行归一化),则第二位置信息横轴(xt-left=xt-ratio,xt-tright=1-xt-ratio),纵轴(1,0)。

在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息之后,将第二位置信息所指示的区域确定为第二区域,该第二区域为目标画布上最终渲染的对象,将第二目标纹理渲染至该第二区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,提高了对图像进行渲染的效率的效果。

作为一种可选的实施方式,在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息之前,该方法还包括:根据目标画布对应的区域的尺寸信息和第一区域在目标画布上的第三位置信息,确定第一区域的尺寸信息,其中,目标画布对应的区域包括第一区域。

在该实施例中,在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息之前,需要确定第一区域的尺寸信息。获取目标画布对应的区域的尺寸信息,也即,获取渲染画面总尺寸,获取第一区域在目标画布上的第三位置信息,比如,获取第一区域的顶点区域坐标,根据目标画布对应的区域的尺寸信息和第一区域在目标画布上的第三位置信息,确定第一区域的尺寸信息,可以根据第一区域在目标画布上的第三位置信息,确定第一区域在目标画布对应的区域的比例,然后根据该比例和目标画布对应的区域的尺寸信息确定第一区域的尺寸信息。

举例而言,第一区域的顶点区域坐标是x(-1,0),y(1,0),则可知该第一区域占据目标画布的左上角四分之一部分,而目标画布对应的区域的尺寸信息是1280*720,则第一区域的尺寸为640*360。

作为一种可选的实施方式,第一位置信息和第二位置信息由目标坐标轴上的坐标表示,目标画布包括目标坐标轴。

在该实施例中,在目标模式为第一目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息,该第一位置信息和第二位置信息可以由目标画布的目标坐标轴上的坐标表示,该目标坐标轴横轴xtex=(xt-left,xt-right),纵轴ytex=(yt-top,yt-bottom)。在可选的实施例中,目标坐标轴完整的坐标区域为横轴(0,1),纵轴(1,0)。

作为一种可选的实施方式,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,该方法还包括:在目标模式为第二目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一区域的第四位置信息进行调整,得到第五位置信息;将第五位置信息所指示的区域确定为第二区域。

在该实施例中,第一区域的尺寸信息可以为第一区域的宽高尺寸信息,单位为像素,比如,为宽wrect、高hrect。第一目标纹理的尺寸信息可以为第一目标纹理的宽wtex、高htex。第一区域的第四位置信息横轴(xv-righ,xv-left),纵轴(yv-top,yv-bottom)。

在目标模式为第二目标模式下,当第一目标纹理的高宽比大于第一区域的高宽比时,第一区域的第四位置信息的纵轴幅值无需缩放,也即,缩放因子为1.0,第五位置信息的纵轴yv-top’=yv-top,yv-bottom’=yv-bottom。第四位置信息到第五位置信息的横轴缩放幅度xv-ratio=(hrect/wrect)/(htex/wtex),则对第四位置信息的横轴(xv-righ,xv-left)缩放后的第五位置信息的横轴坐标为xv-left’=(xv-right+xv-left)/2-(xv-right–xv-left)/2*xv-ratio,xv-right’=(xv-right+xv-left)/2+(xv-right–xv-right)/2*xv-ratio。

在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一区域的第四位置信息进行调整,得到第五位置信息;将第五位置信息所指示的区域确定为第二区域,该第二区域为目标画布上最终渲染的对象,将第二目标纹理渲染至该第二区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,提高了对图像进行渲染的效率的效果。

作为一种可选的实施方式,在步骤s208,将第二目标纹理渲染至第二区域中之后,该方法还包括:对直播模板进行渲染,其中,直播模板用于显示目标视频的指示信息,直播模板上与第一区域重合的区域为透明区域。

该实施例的直播模板用于目标视频的指示的信息,比如,目标视频为游戏直播视频,用于显示游戏直播视频的名称,可以为一图片。直播模板的模板区域会覆盖在第一区域上,而直播模板上与第一区域重合的区域为透明区域,因而对直播模板的渲染在对第一区域的渲染之后。在将第二目标纹理渲染至第二区域中之后,对第二区域所处的直播模板进行渲染,从而保证直播模板上的信息不被第一区域所遮挡。

作为一种可选的实施方式,在将第二目标纹理渲染至第二区域中之后,该方法还包括:在目标画布上确定与目标视频区域对应的第三区域,其中,第三区域为待渲染的区域,与第一区域重叠,且小于第一区域;获取与第三区域对应的目标模式;基于目标模式,对第四目标纹理进行调整,得到第五目标纹理,其中,第四目标纹理为待渲染到第三区域的渲染内容,第五目标纹理与第四区域相匹配,第四区域位于第三区域内且第四区域小于等于第三区域;将第五目标纹理渲染至第四区域中。

在该实施例中,不同渲染区域之间会有重叠,保证上层区域对象不被其背景遮挡,需要严格保证渲染的顺序,比如,先渲染背景类的区域,再渲染上层区域。在将第二目标纹理渲染至第二区域中之后,在目标画布上确定与目标视频区域对应的第三区域,可以确定与目标视频区域对应的第三区域,该第三区域为待渲染的区域,比如,为待添加的水印的区域,可以与第一区域重叠,且小于第一区域,也即,该第一区域为第三区域的背景类区域,第三区域为第一区域的上层区域;在目标画布上确定与目标视频区域对应的第三区域之后,获取与第三区域对应的目标模式,基于目标模式,对第四目标纹理进行调整,得到第五目标纹理,该第四目标纹理为待渲染到第三区域的渲染内容,第五目标纹理与第四区域相匹配,第四区域位于第三区域内且第四区域小于等于第三区域;最后将第五目标纹理渲染至第四区域中,从而实现按照顺序,逐个将纹理渲染至对应的区域中。由于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与所述目标视频区域对应的一个区域,框架内部可根据与区域对应的目标模式自动将与区域对应的纹理渲染至区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,在需求变更时,需要额外大幅度修改,解决了对图像进行渲染的效率低的问题,进而达到了提高对图像进行渲染的效率的技术效果。

作为一种可选的实施方式,在步骤s206,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理之前,该方法还包括:获取与第一区域的类型对应的第一目标纹理。

在该实施例中,第一区域具有类型,比如,该第一区域的类型为摄像头区域类型、录屏区域类型、图片区域类型等,此处不做限制。在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理之前,获取与第一区域的类型对应的第一目标纹理,该第一目标纹理可以为与摄像头区域对应的摄像头数据,与录屏区域对应的录屏图像,与图片区域类型对应的图片等。其中,摄像头数据可以为摄像头输出尺寸,包括摄像输出的分辨率。

作为一种可选的实施方式,通过目标接口获取与第一区域对应的目标模式,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,将第二目标纹理渲染至第二区域中,其中,目标接口为预先配置的与第一区域对应的接口。

该实施例提供了一种自动化合成视频的框架,该框架包括预先配置的目标接口,通过目标接口获取与第一区域对应的目标模式,基于目标模式,自动对第一目标纹理进行调整,得到第二目标纹理,最后将第二目标纹理渲染至第二区域中。

该实施例需要增加不同图片效果,或者合成更多的图片进行拓展,只需要在目标画布上增加一个区域即可,框架内部可根据增加的区域的坐标信息、区域类型、区域的目标模式(填充模式),调用目标接口自动处理,从而避免了预览和视频不同尺寸,需要额外处理,在需求变更需要同步大幅修改,在产品迭代时影响区域过大的问题,提高了对图像进行渲染的效率。

下面结合优选的实施方式对本发明的技术方案进行说明。

该实施例将每一个独立的渲染对象封装成一个区域对象,比如,摄像头画面为一个区域,水印是一个区域,两区域允许重叠。

在该实施例中,区域对象的顶点坐标范围是横轴由左至右(-1,1),纵轴由上至下(1,-1),此区域为显示区域。

一帧完整的视频画面或者预览画面,无论其实际尺寸大小,最终都是映射到横轴(-1,1),纵轴(1,-1)的区间内,并在这个画面内划分不同的区域。各区域根据其在画面中的位置,可以确定渲染区域坐标,也即,区域顶点坐标,坐标区间横轴在(-1,1),纵轴在(1,-1)之间。比如,摄像头画面占据视频右侧1/3区域,纵向完整区域,则摄像头区域坐标为x(1/3,1),y(1,-1)。

另外,不同渲染区域之间会有重叠,为保证小区域对象不被其背景遮挡,需要严格保证渲染顺序,也即,先渲染背景类的区域,再渲染上层区域。

进一步地,由于后期游戏直播需求迭代,该实施例在直播画面中需要包含主播/游戏相关信息。针对这类需求,该实施例独立出直播模板的概念,该直播模板本身是一个图片,该图片可以包括两个透明区域,一个区域可以用于嵌入游戏视频画面,另一个区域可以用于嵌入摄像头画面。因此模板一般除了自身的坐标区域信息,还可以包含其两个透明区域的信息,比如,包括区域的坐标信息、区域类型、填充模式等,用于控制摄像头/游戏画面的渲染坐标。

下面对本发明实施例的方案进行详述。

该实施例在画布进行渲染,比如,预览的画面、输出的视频帧都是一块画布。划分区域是将画布划分成不同的区域,在每个区域中渲染各自的内容。一个区域可以包含与区域类型对应的纹理、区域位置(由区域顶点坐标确定),以及填充模式这几个要素。

下面对本发明实施例的区域纹理坐标与区域顶点坐标进行介绍。

该实施例的区域纹理坐标是指在渲染时,将纹理坐标区域里内容渲染到画布上,渲染到画布上的纹理不一定是整个纹理。区域顶点坐标表明在画布上要渲染的区域的位置区间,也即,将某个纹理渲染到画布的该区间中。

图3是根据本发明实施例的一种纹理区域坐标的示意图。如图3所示,蓝色指示区域为截取的纹理部分区域,记纹理坐标xtex=(xt-left,xt-right),ytex=(yt-top,yt-bottom),纹理完整的坐标区域是xtex=(0,1),ytex=(1,0)。其中,xtex用于表示纹理横坐标区域,xt-left用于表示纹理横坐标区域最左侧的x坐标值,xt-right用于表示纹理横坐标区域最右侧的x坐标值,ytex用于表示纹理纵坐标区域,yt-top用于表示纹理纵坐标区域的最上侧y坐标值,yt-bottom用于表示纹理纵坐标区域的最下侧y坐标值。

图4是根据本发明实施例的一种区域顶点坐标的示意图。如图4所示,区域顶点坐标标明要渲染的区域的位置区间,区域顶点坐标区域横轴取值范围为(-1,1),纵轴取值范围为(1,-1)。

如图所示,蓝色指示区域为区域顶点坐标,记区域顶点坐标为xver=(xv-left,xv-right),yver=(yv-top,yv-bottom),其中,xver用于表示顶点横坐标区域,xv-left用于表示横坐标区域最左侧x坐标,xv-right用于表示横坐标区域最右侧x坐标,yv用于表示顶点纵坐标区域,yv-top用于表示顶点纵坐标区域的最上侧y坐标,yv-bottom用于表示顶点纵坐标区域的最下侧y坐标。

图5是根据本发明实施例的一种区域的示意图。如图5所示,视频/预览画面由a区域,b区域,c区域三部分组成。每个区域都有一个纹理,在渲染时,按照顺序,逐个区域渲染纹理,分别将a区域,b区域,c区域对应的纹理渲染至相应区域。其中,a区域的宽度占画布总宽的1/4,c区域的高度占据画布总高度的2/9。

首先计算各区域的区域顶点坐标,其中,a区域顶点坐标为xa=(0.5,1.0),ya=(1.0,-1.0);b区域顶点坐标为xb=(-1,0.5),yb=(1.0,-5/9);c区域顶点坐标xc=(-1,0.5),yc=(-5/9,-1)。

如果不做特殊处理,各区域的渲染顶点坐标分别为上述区域,纹理坐标一般为xtex=(0,1),ytex=(1,0)。

图6是根据本发明实施例的一种区域实际效果的示意图。如图6所示,a区域为摄像头画面区域,b区域为游戏投屏画面的区域,c区域为主播信息区域。

进一步地,该实施例的渲染包括两种模式,也即,等比例填充模式和等比例适配模式。其中,等比例填充模式为按照等比例伸缩填充渲染区域,超出渲染区域的部分会被裁减;等比例适配模式按照等比例伸缩适配渲染区域,图片在渲染区域内最大程度的完整居中显示。

图7是根据本发明实施例的一种比例填充模式和等比例适配模式的对比示意图。如图7所示,待渲染纹理按照等比例填充模式伸缩填充至渲染区域,待渲染纹理超出渲染区域的部分会被裁剪;待渲染纹理按照等比例适配模式伸缩填充至渲染区域,待渲染纹理在渲染区域内最大程度的完整居中显示。

该实施例根据区域顶点坐标以及渲染画面总尺寸大小(即画布尺寸),可以获得区域尺寸大小wrect*hrect,并记纹理尺寸大小为wtex*htex,单位为像素,根据尺寸比例情况有不同处理。比如,渲染画布尺寸总尺寸是1280*720,某区域的区域顶点坐标是x(-1,0),y(1,0),则可知该区域占据画布的左上角四分之一部分,也即,该区域的尺寸为wrect*hrect为640*360。

下面对本发明实施例的等比例填充模式的坐标计算进行介绍。

在等比例填充模式下,顶点区域坐标保持不变。

在htex/wtex>hrect/wrect的情况下,纹理横坐标为xt-left=0,xt-right=1,则纹理纵坐标计算方式为:裁剪比例yt-ratio=(1-(hrect/wrect)/(htex/wtex))/2,其含义为在纹理尺寸与渲染区域尺寸比例不一致时,需要截取部分纹理进行展示,由此公式算出的yt-ratio为应裁减掉的比例(已进行归一化),因而裁减后纹理坐标为:yt-top=1–yt-ratio,yt-bottom=yt-ratio。

图8是根据本发明实施例的一种纹理坐标的示意图。如图8所示,假设一幅高宽为2:1的图片要渲染至高宽比为1:1的渲染区域上,绿色指示区域为渲染区域,其高宽比为1:1,黄色指示区域为图片纹理区域,其高宽比为2:1。在等比例填充模式下,需要对超出渲染区域的侧边区域进行裁减。

计算yt-ratio=(1-(hrect/wrect)/(htex/wtex))/2=(1-(1/1)/(2/1))/2=0.25。

由图8可知,横轴无需裁减,纵轴上下各yt-ratio=0.25的区域需要裁减,则在裁减之后,纹理纵坐标应为:yt-top=0.75,yt-bottom=0.25。

在htex/wtex<=hrect/wrect时,纹理纵坐标为yt-top=1,xt-bottom=0。记xt-ratio=(1-(htex/wtex)/(hrect/wrect))/2,则xt-left=xt-ratio,xt-tright=1-xt-ratio。

下面对本发明实施例的等比例适配模式的坐标计算。

在等比例适配模式下,纹理坐标幅值为1,顶点区域坐标需进行缩放,记原区域顶点坐标为xver=(xv-left,xv-right),yver=(yv-top,yv-bottom),根据等比例适配模式进行修正后,区域顶点坐标为xver’=(xv-left’,xv-right’),yver’=(yv-top’,yv-bottom’)。

在htex/wtex>hrect/wrect时,纵轴幅值无需缩放,也即,缩放因子为1.0,yv-top’=yv-top,yv-bottom’=yv-bottom。横轴缩放幅度为xv-ratio=(hrect/wrect)/(htex/wtex),缩放后的横轴顶点坐标为xv-left’=(xv-right+xv-left)/2-(xv-right–xv-left)/2*xv-ratio,xv-right’=(xv-right+xv-left)/2+(xv-right–xv-right)/2*xv-ratio。

图9是根据本发明实施例的一种顶点坐标的示意图。如图9所示,绿色指示区域为渲染区域,黄色指示区域为纹理,渲染区域坐标为xver=(0,1),yver=(0.75,0.25),假定顶点区域高宽比为1:2,纹理高宽比为1:1。

等比例适配模式下需要将纹理居中完整展示,即如图9右图所示,重新计算顶点坐标:xv-ratio=(hrect/wrect)/(htex/wtex)=(1/2)/(1/1)=0.5;

xv-left’=(xv-right+xv-left)/2-(xv-right–xv-left)/2*xv-ratio=(1+0)/2-(1–0)/2*0.5=0.25;

xv-right’=(xv-right+xv-left)/2+(xv-right–xv-right)/2*xv-ratio=(1+0)/2+(1-0)/2*0.5=0.75;

因此结合等比例适配模式后,顶点横坐标需由xver=(0,1)更新为xver’=(0.25,0.75),纵坐标保持不变。

当htex/wtex<=hrect/wrect时,横轴幅值无需缩放,也即,缩放因子为1.0,xv-left’=xv-left,xv-right’=xv-right;纵轴缩放幅度为yv-ratio=(htex/wtex)/(hrect/wrect);缩放后的横轴顶点坐标为:yv-top’=(yv-top+yv-bottom)/2+(yv-top–yv-bottom)/2*yv-ratio;

yv-bottom’=(yv-top+yv-bottom)/2-(yv-top–yv-bottom)/2*yv-ratio。

根据渲染区域及填充模式即可确定最后的渲染坐标。

下面对本发明实施例的渲染顺序与渲染模板进行介绍。

图10是根据本发明实施例的一种渲染模板的使用场景的示意图。如图10所示,为手游双屏直播,主要分为三个区域:红色指示框所圈区域为模板图,记为模板区域,可以显示主播的信息、id、设备信息、游戏名称等,该模板图包含两个透明区域分别由黄色指示框和绿色指示框所框出。右侧绿色指示框区域用于渲染摄像头画面,记为摄像头区域,左上区黄色指示框域渲染游戏投屏画面,记为游戏区域。

在模板设置完成之后,即可根据透明区域的位置计算两个透明区域顶点坐标,模板区域铺满整个画布,因此顶点坐标为x(-1,1),y(1,-1)。

在可选的实施例中,模板区域有时需要覆盖在摄像头或者游戏区域上,因此需要保证模板区域在摄像头区域和游戏区域之后进行渲染。

在可选的实施例中,直播场景一般需要支持预览与推流,但是由于硬件设备差异,预览尺寸与视频尺寸并非一致,这种场景需要分别对预览以及推流视频计算区域坐标。其中,

举例而言,预览屏幕尺寸是1920*960,视频尺寸是1280*720,要求在右半侧区域(顶点坐标为xver=(0,1),yver=(1,-1))显示摄像头画面,则在预览时,摄像头区域对应的区域大小为960*960高宽比为1:1;视频中,摄像头区域对应的区域大小为640*720高宽比为8:9。两者渲染区域比例不一致,最后结合渲染模式计算出的坐标是有差异的。因此,对于不同比例尺寸的预览和视频,在计算顶点和纹理坐标时,需要分别按照该实施例的上述流程计算一次。

该实施例的区域渲染提供了一种自动化合成视频的框架,往后拓展需求,如果需要增加不同图片的效果,或者合成更多的图片,只需要画布上增加一个区域即可,框架内部可根据区域信息(如坐标信息、区域类型、填充模式等)自动进行处理。

直播模板的概念丰富直播画面,并提供了主播更多自主设置信息方式,如在模板上添加主播独有的信息,只需要提供入口,在模板上编辑相应文本,重新生成模板图片即可。框架内部不关心图片本身内容。另外在游戏类型拓展上,新增游戏,只需要生成相应的美术资源(游戏模板图片),并设置相应的区域坐标即可,从而提高了对图像进行处理的效率。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明实施例还提供了一种移动终端中的直播画面渲染装置。需要说明的是,该实施例的移动终端中的直播画面渲染装置可以用于执行本发明实施例的移动终端中的直播画面渲染方法。

图11是根据本发明实施例的一种移动终端中的直播画面渲染装置的示意图。如图11所示,该移动终端中的直播画面渲染装置110包括:确定单元10、获取单元20、调整单元30和渲染单元40。

确定单元10,用于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域。

获取单元20,用于获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式。

调整单元30,用于基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域。

渲染单元40,用于将第二目标纹理渲染至第二区域中。

在可选的实施例中,调整单元30包括:第一调整模块,用于在目标模式为第一目标模式的情况下,对第一目标纹理按照第一目标比例进行调整,得到第三目标纹理,其中,第三目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,且第三目标纹理在目标画布上对应的区域大于等于第一区域;截取模块,用于将第一区域确定为第二区域,并按照第二区域的尺寸信息,从第三目标纹理中截取第二目标纹理,其中,第二目标纹理的尺寸信息与第二区域的尺寸信息相同。

在可选的实施例中,调整单元30包括:第二调整模块,用于在目标模式为第二目标模式的情况下,对第一目标纹理按照第二目标比例进行调整,得到第二目标纹理,其中,第二目标纹理的至少一条边长的尺寸与第一区域的至少一条边长的尺寸相同,第二目标纹理在目标画布上对应的区域为第二区域,且第二区域在第一区域中居中。

在可选的实施例中,该装置还包括:第一调整单元,用于在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,在目标模式为第一目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息;第一确定单元,用于将第二位置信息所指示的区域确定为第二区域。

在可选的实施例中,该装置还包括:第二确定单元,用于在基于目标模式,在按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一目标纹理的第一位置信息进行调整,得到第二位置信息之前,根据目标画布对应的区域的尺寸信息和第一区域在目标画布上的第三位置信息,确定第一区域的尺寸信息,其中,目标画布对应的区域包括第一区域。

在可选的实施例中,该实施例的第一位置信息和第二位置信息由目标坐标轴上的坐标表示,目标画布包括目标坐标轴。

在可选的实施例中,该实施例还包括:第二调整单元,在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理时,用于在目标模式为第二目标模式的情况下,按照第一区域的尺寸信息、第一目标纹理的尺寸信息对第一区域的第四位置信息进行调整,得到第五位置信息;第三确定单元,用于将第五位置信息所指示的区域确定为第二区域。

在可选的实施例中,该装置还包括:第一渲染单元,用于在将第二目标纹理渲染至第二区域中之后,对直播模板进行渲染,其中,直播模板用于显示目标视频的指示信息,直播模板上与第一区域重合的区域为透明区域。

在可选的实施例中,该装置还包括:第四确定单元,用于在将第二目标纹理渲染至第二区域中之后,在目标画布上确定与目标视频区域对应的第三区域,其中,第三区域为待渲染的区域,与第一区域重叠,且小于第一区域;第一获取单元,用于获取与第三区域对应的目标模式;第三调整单元,用于基于目标模式,对第四目标纹理进行调整,得到第五目标纹理,其中,第四目标纹理为待渲染到第三区域的渲染内容,第五目标纹理与第四区域相匹配,第四区域位于第三区域内且第四区域小于等于第三区域;第二渲染单元,用于将第五目标纹理渲染至第四区域中。

在可选的实施例中,该装置还包括:第二获取单元,用于在基于目标模式,对第一目标纹理进行调整,得到第二目标纹理之前,获取与第一区域的类型对应的第一目标纹理。

在可选的实施例中,该装置还包括:处理单元,用于通过目标接口获取与第一区域对应的目标模式,基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,将第二目标纹理渲染至第二区域中,其中,目标接口为预先配置的与第一区域对应的接口。

该实施例通过确定单元10根据直播模板信息确定预设的目标视频区域并在目标画布上确定与目标视频区域对应的第一区域,其中,第一区域为待渲染的区域,通过获取单元20获取与第一区域对应的目标模式,其中,目标模式用于指示对第一区域进行渲染的模式,通过调整单元30基于目标模式,对第一目标纹理进行调整,得到第二目标纹理,其中,第一目标纹理为待渲染到第一区域的渲染内容,第二目标纹理与第二区域相匹配,第二区域位于第一区域内并且第二区域小于等于第一区域,通过渲染单元40将第二目标纹理渲染至第二区域中。由于根据直播模板信息确定预设的目标视频区域并在目标画布上确定与所述目标视频区域对应的一个区域,框架内部可根据与区域对应的目标模式自动将与区域对应的纹理渲染至区域中,达到了对图像进行自动渲染的目的,避免了对图像进的渲染不够自动化,在需求变更时,需要额外大幅度修改,解决了对图像进行渲染的效率低的问题,进而达到了提高对图像进行渲染的效率的技术效果。

本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

在可选的实施例中,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

在可选的实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,在可选的实施例中,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1