一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种用于视频的特效渲染的装置和方法

2022-05-18 16:57:32 来源:中国专利 TAG:


1.本发明涉及互联网技术领域,具体为一种用于视频的特效渲染的装置和方法。


背景技术:

2.在这个微拍时代,人们希望能够通过手机、平板电脑等移动终端中的具有视频编辑功能的软件,将自己和家人朋友的零散的照片和影像转化为有趣的动态视频,与家人朋友一同分享。在这个转化过程中,对视频帧进行渲染是一个重要的环节。
3.渲染,是cg的最后一道工序(当然,除了后期制作),也是最终使图像符合的3d场景的阶段。英文为render,也有的把它称为着色,但一般把shade称为着色,把render称为渲染。因为render和shade这两个词在三维软件中是截然不同的两个概念,虽然它们的功能很相似,但却有不同。shade是一种显示方案,一般出现在三维软件的主要窗口中,和三维模型的线框图一样起到辅助观察模型的作用。很明显,着色模式比线框模式更容易让我们理解模型的结构,但它只是简单的显示而已,数字图像中把它称为明暗着色法。
4.视频后期特效处理与合成软件都会给用户提供大量的视频特效以便让用户可以对视频进行各种各样的处理,比如校色,模糊,运动,变形,扫换等等。在视频后期特效处理与合成领域,除了要求这些特效提供尽可能多的功能外,还需要这些特效在渲染的时候尽可能的快,因为无论是用于合成目的还是用剪辑目的的工程用户都可能在原始素材上加许多特效,如果这些特效的速度很慢就会让用户在调节的时候效率很低。另外,从视频文件中得出的图像一般都是基于场的(field based),也就是说该图像的数据是两个时间点的采样数据构成的,比如对于pal制来说,一幅图像的尺寸为720x576,如果图像最上面的扫描线编号为0的话,那么编号为0,2,4,8...的扫描线属于第一场,而那么编号为1,3,5,7...的扫描线属于第二场,也就是说这幅图像是由采样时间不同的两幅图像交织而成,在这种情况下,如果在进行特效处理时不考虑该图像是由两场构成的这个事实,那么有些特效的输出结果可能将两场混淆(比如模糊,或者运动等等),其结果是图像播放的质量下降,甚至出现让观众觉得很奇怪的效果。当然对于像校色这样的特效是不会出现这样的问题的,但是由于我们在最终输出的也是基于场的视频画面,因此所有特效参数的动画也应该是精确到场的,也就是说即便输入图像是一个帧图像,在有特效参数动画的情况下输出仍然应该是按两场分别渲染的形式给出,每场的特技参数是不同的,这样才能得到最好的质量。
5.在短视频日益生动的今天,越来越多的人参与到内容创作的行业中。现在市面上很多厂商都提供了短视频编辑合成的能力,但是现有视频渲染架构没有解决用户侧的学习使用成本高、视频渲染慢、发热严重、合成过程资源占用高等痛点。
6.随着短视频、直播行业蓬勃发展,视频特效渲染的使用频率大幅增加。在视频生产过程中,拍摄和编辑是两个不同的场景。在两个场景中,为了呈现的视觉效果更加丰富多彩,往往都需要在视频渲染基础上再做特效渲染,将两层渲染叠加的视频影像再呈现给用户。在相关技术中,通常针对拍摄场景和剪辑场景设置各自的特效绘制模块,但是两个场景下的特效不能够互通。开发人员需要针对拍摄场景开发一套特效,针对剪辑场景开发一套
特效,各自的特效模块不能实现两个场景下的互通使用,造成了资源浪费。


技术实现要素:

7.鉴于现有技术中所存在的问题,本发明公开了一种用于视频的特效渲染的装置和方法,采用的技术方案是,包括接收模块,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象、确认模块,用于对所述渲染指令进行分析,确定与所述视频帧对应的特效以及各特效的作用时间区间、渲染模块,将特效绘制到接收的帧缓存对象的步骤中,根据帧缓存对象的特性对特效进行适应性调整、合并模块、输出模块,所述接收模块连接所述确认模块,所述确认模块连接所述渲染模块,其配置为用于根据所述递归下降式图层渲染树进行图层渲染,用于采取如下方式根据所述递归下降式图层渲染树进行图层渲染,对所述递归下降式图层渲染树进行渲染必要性检查,根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染、所述渲染模块连接所述合并模块,所述合并模块连接所述输出模块。
8.作为本发明的一种优选技术方案,所述接收模块包括转换模块和接收制令,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象,通过转换模块,将不同格式的文件进行转换,使其可以被统一处理,避免兼容问题,通过接收指令,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象。
9.作为本发明的一种优选技术方案,所述渲染模块包括特效选择,被配置为根据用户选择的特效名称查找与选择的特效名称对应的特效配置、纹理生成,被配置为加载所述特效配置需要的资源并将所述资源转换为纹理、着色选择,被配置为编译和链接所述特效配置的着色器,并确定当前绘图程序使用链接后的着色器、特效指定,接收的帧缓存对象,并将绘制了特效的帧缓存对象返回给合并模块。
10.作为本发明的一种优选技术方案,所述输出模块包括尺寸和比例缩放、输出格式和数据转换。
11.本发明还公开了利用上述特效渲染装置渲染视频的渲染方法,采用的技术方案是,包括以下步骤:步骤1,接收模块,用于接收用户的渲染指令和待渲染的视频帧,并进行转换,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象;步骤2,确认模块,用于提取所确定的特效标识信息,用于对所述渲染指令进行分析,确定与所述视频帧对应的特效以及各特效的作用时间区间;步骤3,渲染模块,具有根据接收的通用渲染参数将特效绘制到接收的帧缓存对象,并将绘制了特效的帧缓存对象返回给合并模块,用于采取如下方式根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染:若所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息存在变换,且所述图层渲染所需的外部依赖文件已准备就绪,则展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染;步骤4,合并模块,将视频与特效进行合并生成,并其将配置为用于根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;步骤5,输出模块,其配置为用于将所述图层渲染的渲染结果进行输出。
12.作为本发明的一种优选技术方案,所述步骤2中,所述确认模块根据所述标识信息,确定与该特效对应的glsl程序。
13.作为本发明的一种优选技术方案,所述步骤4中,所述合并模块用于将符合预设规则的特效所对应的glsl程序进行合并,得到合并后的glsl程序。
14.作为本发明的一种优选技术方案,所述步骤5中,所述输出模块采取根据预设输出尺寸对所述渲染结果进行等比例缩放、输出格式对所述渲染结果进行数据格式转换的方式将所述图层渲染的渲染结果进行输出。
15.本发明的有益效果:本发明通过接收模块、确认模块、渲染模块、合并模块、输出模块之间的相互配合,能够让不同视频场景的特效视觉感官同一,为用户提供了一致的体验,另外本设计方案可以针对不同视频场景开发特效模块,节约成本,便于迭代,并且通过合并后的glsl程序,实现对视频帧的渲染;与现有技术相比,减少了glsl程序的运行次数,提高了渲染效率,通过接收模块将视频图像帧的轨道式图层渲染树转译为递归下降式图层渲染树,并根据递归下降式图层渲染树进行图层渲染,从而提高了视频图像帧的渲染效率及渲染效果。
附图说明
16.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,各元件或部分并不一定按照实际的比例绘制。
17.图1为本发明结构示意图;
18.图2为本发明接收模块结构示意图;
19.图3为本发明渲染模块结构示意图;
20.图4为本发明输出模块结构示意图。
21.图中:1、接收模块;11、转换模块;12、接收指令;2、确认模块;3、渲染模块;31、特效选择;32、纹理生成;33、着色选择;34、特效指定;4、合并模块;5、输出模块;51、尺寸和比例缩放;52、输出格式和数据转换。
具体实施方式
22.下面将结合附图对本发明的技术方案进行清楚、完整地描述。在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相正对地重要性。
23.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
24.实施例1
25.如图1至图4所示,本发明公开了一种用于视频的特效渲染的装置和方法,采用的技术方案是,包括接收模块1,接收用户的渲染指令和待渲染的视频帧,对所述渲染指令进行分析,确定与所述视频帧对应的特效以及各特效的作用时间区间、确认模块2,用于对所述渲染指令进行分析,确定与所述视频帧对应的特效以及各特效的作用时间区间、渲染模块3,通用渲染模块将特效绘制到接收的帧缓存对象中,根据帧缓存对象的特性对特效进行适应性调整、合并模块4、输出模块5,所述接收模块1连接所述确认模块2,所述确认模块2连接所述渲染模块3、所述渲染模块3连接所述合并模块4,所述合并模块4连接所述输出模块5。
26.作为本发明的一种优选技术方案,所述接收模块1包括转换模块11和接收制令12,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象,通过接收指令,被配置为从视频绘制模块接收用于视频的绘制上下文和已经绘制了视频的帧缓存对象。
27.作为本发明的一种优选技术方案,所述渲染模块3包括特效选择31、纹理生成32,被配置为加载所述特效配置需要的资源并将所述资源转换为纹理、着色选择33,被配置为使用链接后的着色器将纹理绘制到接收的帧缓存对象、特效指定34。
28.作为本发明的一种优选技术方案,所述输出模块5包括尺寸和比例缩放51、输出格式和数据转换52。
29.本发明还公开了利用上述特效渲染装置渲染视频的渲染方法,采用的技术方案是,包括以下步骤:步骤1,接收模块,用于接收用户的渲染指令和待渲染的视频帧,并进行转换;步骤2,确认模块,用于提取所确定的特效标识信息,用于对所述渲染指令进行分析,确定与所述视频帧对应的特效以及各特效的作用时间区间;步骤3,渲染模块,具有根据接收的通用渲染参数将特效绘制到接收的帧缓存对象,并将绘制了特效的帧缓存对象返回给合并模块;步骤4,合并模块,将视频与特效进行合并生成,并其配置为用于根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;步骤5,输出模块,其配置为用于将所述图层渲染的渲染结果进行输出,将所述图层渲染的渲染结果进行输出:根据预设输出尺寸对所述渲染结果进行等比例缩放,根据预设输出格式对所述渲染结果进行数据格式转换。
30.作为本发明的一种优选技术方案,所述步骤2中,所述确认模块2根据所述标识信息,确定与该特效对应的glsl程序,opengl着色语言(opengl shading language)是用来在opengl中着色编程的语言,也即开发人员写的短小的自定义程序,他们是在图形卡的gpu(graphic processor unit图形处理单元)上执行的,代替了固定的渲染管线的一部分,使渲染管线中不同层次具有可编程性。
31.作为本发明的一种优选技术方案,所述步骤4中,所述合并模块4用于将符合预设规则的特效所对应的glsl程序进行合并,得到合并后的glsl程序,然后运行所述合并后的glsl程序和不符合预设规则的特效所对应的glsl程序,得到渲染后的特效帧。
32.作为本发明的一种优选技术方案,所述步骤5中,所述输出模块5采取根据预设输
出尺寸对所述渲染结果进行等比例缩放、输出格式对所述渲染结果进行数据格式转换的方式将所述图层渲染的渲染结果进行输出。
33.本发明涉及的电路连接为本领域技术人员采用的惯用手段,可通过有限次试验得到技术启示,属于公知常识。
34.本文中未详细说明的部件为现有技术。
35.上述虽然对本发明的具体实施例作了详细说明,但是本发明并不限于上述实施例,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化,而不具备创造性劳动的修改或变形仍在本发明的保护范围以内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献