CN111899155B - 视频处理方法、装置、计算机设备及存储介质 - Google Patents
视频处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111899155B CN111899155B CN202010606608.4A CN202010606608A CN111899155B CN 111899155 B CN111899155 B CN 111899155B CN 202010606608 A CN202010606608 A CN 202010606608A CN 111899155 B CN111899155 B CN 111899155B
- Authority
- CN
- China
- Prior art keywords
- layer
- video
- file
- target
- frame
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 230000000694 effects Effects 0.000 claims abstract description 222
- 238000012545 processing Methods 0.000 claims abstract description 82
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000013507 mapping Methods 0.000 claims abstract description 41
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 9
- 238000009877 rendering Methods 0.000 claims description 16
- 230000015572 biosynthetic process Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000003786 synthesis reaction Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 23
- 239000000203 mixture Substances 0.000 description 22
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000009795 derivation Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种视频处理方法、装置、计算机设备及存储介质,涉及图像处理技术领域,用于提高视频处理效率。该方法包括:获取对待处理的视频文件进行动画特效处理的目标动画特效文件;目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,至少一个视频图层中包括至少一个可编辑图层,可编辑图层中包括至少一个可替换子图层;根据视频文件的时长,以及目标动画特效文件的时长,确定出视频文件中各视频帧与目标特效文件中视频图层之间的映射关系;根据映射关系,基于每个视频帧和对应的视频图层分别获得各个目标视频帧;合成获得的各个目标视频帧,获得动画特效处理后的目标视频文件。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及图像处理技术领域,提供一种视频处理方法、装置、计算机设备及存储介质。
背景技术
视频社交受到用户的青睐,各视频社交平台会为用户提供对应的视频处理方案。
目前,视频社交平台大多是能提供一些静态的特效。用户在拍摄完视频之后,视频社交平台对应的处理设备解析出各视频帧,用户可以指定在哪些视频帧中去添加该特效,然后添加之后,处理设备进行渲染,获得处理后的视频帧。可见,目前的视频处理方式中需要用户进行大量的操作,视频处理效率低。
发明内容
本申请实施例通过提供一种视频处理方法、装置、计算机设备及存储介质,用于提高视频处理的效率。
一方面,提供一种视频处理方法,包括:
获取对待处理的视频文件进行动画特效处理的目标动画特效文件;其中,所述目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,所述至少一个视频图层中包括至少一个可编辑图层,可编辑图层中包括至少一个可替换子图层;
根据所述视频文件的时长,以及所述目标动画特效文件的时长,确定出所述视频文件中各视频帧与所述目标特效文件中视频图层之间的映射关系;
根据所述映射关系,基于每个视频帧和对应的视频图层分别获得各个目标视频帧;其中,当视频帧对应的视频图层为可编辑图层时,将可编辑图层中的可替换子图层的图层数据替换为对应的视频帧的帧数据以获得目标视频帧;
合成获得的各个目标视频帧,获得动画特效处理后的目标视频文件。
另一方面,提供一种视频处理装置,包括:
获取模块,用于获取对待处理的视频文件进行动画特效处理的目标动画特效文件;其中,所述目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,所述至少一个视频图层中包括至少一个可编辑图层,可编辑图层中包括至少一个可替换子图层;
确定模块,用于根据所述视频文件的时长,以及所述目标动画特效文件的时长,确定出所述视频文件中各视频帧与所述目标特效文件中视频图层之间的映射关系;
获得模块,用于根据所述映射关系,基于每个视频帧和对应的视频图层分别获得各个目标视频帧;其中,当视频帧对应的视频图层为可编辑图层时,将可编辑图层中的可替换子图层的图层数据替换为对应的视频帧的帧数据以获得目标视频帧;
合成模块,用于合成获得的各个目标视频帧,获得动画特效处理后的目标视频文件。
在一种可能的实施例中,所述获得模块具体用于针对所述至少一个视频图层中每个视频图层执行如下过程,获得目标视频帧:
当视频图层为可编辑图层时,根据所述映射关系,将可编辑图层中的可替换子图层替换为视频帧,目标视频帧为替换后的可编辑图层;
当视频图层为不可编辑的视频图层时,目标视频帧为视频图层。
在一种可能的实施例中,所述获得模块具体用于:
将可替换子图层的图层数据替换为可编辑图层对应的视频帧中与图层数据类型相同的帧数据。
在一种可能的实施例中,所述获得模块具体用于执行如下的一种或几种:
若可编辑图层中的可替换子图层为文字层,则将可替换子图层的文字内容替换为可编辑图层对应的视频帧中的文字内容;或,
若可编辑图层中可替换子图层为图片层,则将可替换子图层中图片关联的图片路径替换为可编辑图层对应的视频帧中图片关联的图片路径。
在一种可能的实施例中,所述目标动画特效文件还包括与替换子图层的图层数据关联的可替换子图层的唯一标识;以及,所述获得模块还用于:
在当视频图层为可编辑图层时,根据所述映射关系,将可编辑图层中的可替换子图层替换为视频帧之前,根据可替换子图层的唯一标识,获得与可替换子图层对应的图层数据。
在一种可能的实施例中,所述获得模块具体用于针对所述视频文件中的每个视频帧执行如下过程,获得目标视频帧:
当视频帧对应的视频图层为不可编辑的图层时,根据所述映射关系,将视频帧对应的视频图层覆盖到视频帧上,目标视频帧为覆盖后的视频帧;
当视频帧对应的视频图层为可编辑图层,则将可编辑图层中除了可替换子图层之外的子图层覆盖到视频帧上,目标视频帧为覆盖后的视频帧。
在一种可能的实施例中,所述合成模块具体用于:
对各个目标视频帧的目标视频帧数据进行数据格式转换,得到可渲染数据格式的目标视频帧数据;
对所述可渲染数据格式的目标视频帧数据进行逐帧渲染,获得动画特效处理后的目标视频文件。
在一种可能的实施例中,所述目标动画特效文件是通过如下方式生成的:
获得至少一个视频图层;
根据对所述至少一个视频图层的视频图层中任一子图层进行的可替换设置操作,确定所述至少一个视频图层中的可编辑图层中的可替换子图层;
根据所述至少一个视频图层,以及所述至少一个视频图层中的可替换子图层,生成目标动画特效文件。
在一种可能的实施例中,所述获取模块用于:
响应于针对多个动画特效标识进行的选择操作,获取选择的动画特效标识关联的目标动画特效文件。
又一方面,提供一种计算机设备,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如一方面中任一项所述的方法。
另一方面,提供一种存储介质,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如一方面中任一项所述的方法。
由于本申请实施例采用上述技术方案,至少具有如下技术效果:
本申请实施例中,在对视频文件进行处理时,根据视频帧的帧数据去替换视频图层中可替换子图层的图层数据,以此类推,生成多个目标视频帧,根据多个目标视频帧,获得动画特效处理后的目标视频文件,可以理解为本申请实施例是基于模板式的目标动画特效文件以及视频文件就能合成目标视频文件,无需用户进行大量的操作,提升视频处理的效率。且,简化了用户操作,提升用户效率。且,处理视频时,不是将每个视频图层直接覆盖在视频帧上,而是利用视频帧的帧数据有针对性地替换视频图层中的可替换图层的图层数据,使得生成的视频帧效果更好。
附图说明
图1为本申请实施例提供的一种视频图层的结构示意图;
图2为本本申请实施例提供的一种视频处理方法的应用场景示例图;
图3为本申请实施例提供的另一种视频处理方法的应用场景示例图;
图4为本申请实施例提供的视频处理设备的结构的示例图;
图5为本申请实施例提供的一种视频处理方法的流程示意图;
图6为本申请实施例提供的一种展示各个动画特效的界面示意图;
图7为本申请实施例提供的确定视频帧和视频图层的映射关系的示例图;
图8为本申请实施例提供的一种获得目标视频帧的示例图;
图9为本申请实施例提供的一种终端和服务器之间的交互示意图;
图10为本申请实施例提供的一种视频处理装置的结构示意图。
图11为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了更好的理解本申请实施例提供的技术方案,下面将结合说明书附图以及具体的实施方式进行详细的说明。
为了便于本领域技术人员更好地理解本申请的技术方案,下面对本申请涉及的名词进行介绍。
动画特效文件:是指动画特效对应的文件,比如可以通过图形视频处理软件设计动画后,通过导出插件导出的动画格式的文件。动画特效文件包括一个或多个视频图层,每个视频图层可以理解为是一个或多个子图层按照一定顺序叠加的结果。本申请实施例中视频图层的包括可编辑的视频图层,为了简化描述,可编辑的视频图层又称为可编辑图层,可编辑图层中部分或全部子图层在后期视频处理过程中是可以被替换的,可以被替换的子图层在本申请中又称为可替换子图层。另外,某些视频图层也可能包括一些不可编辑的视频图层。用户选择的用于处理视频的动画特效文件即为目标动画特效文件。为了更清楚地说明视频图层,请参照图1,表示一种动画特效,图1中展示的画面为可以理解为一个视频图层的示例图,该视频图层100具体如图1中的a所示,具体该视频图层包括有星星和山,该视频图层100实际包括图1中子图层b中的星星,子图层c中的山。该动画特效还包括时长,如图1中所示的15S等。
PAG特效文件:一种动画特效文件的例子,PAG特效文件采用了极高压缩率的动态比特位存储技术,将图片、声音、视频等资源可直接集成于单文件内。设计师可以通过AE软件设计出产品需要的动画特效,再通过PAG Exporter导出插件,读取AE文件中的动画特性数据,并可根据具体需求选择矢量导出、位图序列帧导出、视频序列帧导出方式中的一种导出一个PAG格式的二进制文件。在客户端展示时,客户端通过PAG SDK可以对使用到的PAG二进制文件进行解码并渲染,在Android平台、iOS平台或web端呈现。PAG特效文件描述动画内容时,矢量方案文件更小,支持动画特效更丰富,支持渲染多级缓存绘制,支持文本编辑及替换图片内容。位图序列帧方案和视频序列帧方案支持AE无限特效,功能更强大,位图序列帧方案主要用于web端,视频序列帧方案侧重于移动端。
PAG数据结构中,一个PAGFile包含有多个Composition,Composition可以分为三类:Vector Composition、Bitmap Composition和Video Composition,分别对应前文中导出PAG文件的三种导出方式:矢量导出、位图序列帧导出和视频序列帧导出。
矢量导出是对AE动画图层结构的还原,在Vector Composition的具体表示中,可以包括合成属性(Composition Attributes)和vector<Layer*>,Composition Attributes用来表示合成的基础属性,如ID、宽高、时长、帧率、背景颜色等,vector<Layer*>中包含的图层信息和AE图层结构一一对应,如一个合成中支持包含虚拟对象(Null Object)、实色图层(Solid Layer)、文本图层(Text Layer)、形状图层(Shape Layer)、图片图层(ImageLayer)、预合成子图层(Pre Compose Layer)等,以其中的实色图层(Solid Layer)为例进一步细分,可以包含子图层的宽高、颜色及子图层属性,图层属性中包含图层时长、起始时刻、拉伸参数、遮罩(Mask)、图层效果(Effects)、图层样式(Layer Style)、变换(Transform)等,将变换(Transform)进一步细分,又可以分为锚点、位置、x/y方向位置、缩放系数、旋转系数、透明度,和AE动画中的图层结构一一对应。
位图序列帧导出是将AE动画的每一帧截取成一张图片,在Bitmap Composition的具体表示中,包含Composition Attributes和Bitmap Sequence数组,Bitmap Sequence中包含导出位图的宽(width)、高(height)、帧率(frame Rate)、是否是关键帧(Key Frame)、位图的位置信息(x、y)及位图的二进制数据(Byte Data)。
视频序列帧是在位图序列帧的基础上,将截取的图片进行视频格式压缩,在VideoComposition的具体表示中,包含Composition Attributes、是否含有透明视频(Alpha)和Video Sequence数组,Video Sequence中包含位图的宽、高、帧率、是否是关键帧及位图的二进制数据。
下面以PAG特效文件为例,对动画特效文件的类结构进行示例描述:
File:是一个数据结构,是代码层面对解码后的pag文件的顶层抽象,一个pag文件解码后对应一个File。
Layer:指File里的层级最小组成单位,Layer对应本申请实施例中子图层。
Composition:指File里的容器结构,包含若干个Layer。Composition对应本申请实施例中图层。
PAG Layer:Layer的包裹结构,指渲染使用的叶节点结构(是一个基类),包含Layer和其它渲染相关数据。
PAG Composition:Composition的包裹结构,指渲染使用的容器节点结构(继承于PAG Layer),包含目标若干PAG Layer。PAG Composition中的数据对应本申请中的图层数据。
PAG File:File的包裹结构,继承于PAG Composition,用于共享File对象,可以将多个PAG File组合到一颗渲染树下。也就是说,一个动画特效文件实际上可以是一个或多个PAG File组成。
PAG File:File的包裹结构,继承于PAG Composition。用于共享File对象,可以将多个PAG File组合到一颗渲染树下。
视频帧:用于表示视频文件中的一帧,每一个视频帧对应有帧数据。
FFmpeg(Fast Forward Mpeg):是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。FFmpeg内置视频解容器以及解码器,因此视频解容器和视频解码器可以通过FFmpeg来实现。
AVFrame:存储的是经过解码后的原始数据,在解码中,AVFrame是解码器的输出,在编码中AVFrame是编码器的输入。
AVPacket:存储解码前或编码后的视频数据。
Avformat:包含复用(mux)、解复用(demux)的多媒体容器库。包含非常多的容器格式,比如一些多媒体容器格式。
AVCodec:存储编解码器信息的结构体。
YUV:YUV是一种颜色编码方法,“Y”表示明亮度(Luminance),也就是灰阶值,“U”和“V”表示色度(Chrominance或Chroma),用于描述色彩和饱和度。
RGB:一种加色模型,将红(Red)、绿(Green)、蓝(Blue)三原色的色光以不同的比例相加,以合成产生各种色彩光。
应当说明的是,本申请实施例中的“多个”是指两个或两个以上,“至少一个”是指一个或一个以上。
相关技术中,处理设备一般是将特效以图层的形式覆盖到需要处理的视频帧上,在处理的过程中,需要用户去指定到底处理哪些视频帧,以及指定该特效到底覆盖视频帧的哪个位置上等,在用户指定之后,处理设备对所有视频帧进行分帧渲染,进而得到处理后的结果。如果需要处理的视频很长,则整个处理过程花费的时间会更长。
考虑到相关技术中处理视频效率低的问题,为此,本申请实施例提供一种视频处理方法,该方法中可以动画特效文件中包括可以被替换的可替换子图层,在对视频文件进行处理的过程中,基于动画特效文件对应的时长,以及视频文件的时长,确定视频帧对应的视频图层,利用视频帧的帧数据替换对应的可替换子图层的图层数据,获得处理后的目标视频帧,根据目标视频帧,获得动画特效处理后的视频文件,实现对视频文件进行动画特效的处理的过程,且,在处理过程中无需用户进行大量的操作,提升了视频处理的效率。另外,该方法对视频文件进行处理时,并不是将所有视频图层分别生硬地覆盖到对应的视频帧上,而是将可替换图层的图层数据用对应视频帧的帧数据进行数据替换,使得处理后的视频帧的呈现效果更好。
本申请实施例中提供两种处理思路,一种是以动画特效文件中每个视频图层为处理基础,将可替换子图层对应的视频帧的帧数据替换视频图层中的图层数据,基于这些替换后的视频图层,生成动画特效处理后的视频。为了简化描述,在本申请实施例中又将该处理方式称为大贴纸处理方式。另一种是以视频文件中每个视频帧为处理基础,利用除了可替换子图层之外的子图层分别去覆盖视频帧,基于覆盖后的各视频帧,生成动画特效处理后的视频。为了简化描述,在本申请实施例中又将该处理方式称为小贴纸处理方式。
考虑到动画特效文件中的可替换图层对应的图层数据可能是文字或图片等,如果以视频帧的帧数据随意地替换动画特效文件中的数据,可能会导致处理后的视频元素较为混乱,视频帧的呈现效果较差,为此,本申请实施例中可以将可替换子图层的图层数据替换为可编辑图层对应的视频帧中与图层数据类型相同的帧数据,也就是说,替换过程中,是以视频帧中的同类型数据替换可替换子图层中的数据,使得处理后的视频各个视频元素的融合性更好,视频的呈现效果更好。
下面基于本申请实施例的设计思想,对本申请实施例中的视频处理方法的应用场景进行介绍。本申请实施例中的涉及的视频处理方法可以用于对视频进行动画处理的场景,该方法具体可以通过视频处理设备实现,下面对本申请实施例涉及的场景以及视频处理设备的具体部署进行示例说明。
示例场景一:
视频处理设备通过终端实现。
请参照图2,为本申请实施例提供的一种视频处理方法的场景图,在该场景中,包括多个终端210,每个终端设备对应用户。
在该场景中,用户可以通过终端210拍摄或输入自己想要进行动画特效处理的视频文件,终端210中可以展示多种动画特效,用户可以选择特定的动画特效,终端210根据用户选择的动画特效,获得对应的目标动画特效文件,终端210在获得待处理的视频文件、以及目标动画特效文件之后,可以按照本申请实施例涉及的视频处理方法对视频进行处理,获得动画特效处理后的视频。
在获得处理后的视频之后,用户可以通过终端210发布或分享视频,或者通过终端210将视频发布到其它的社交平台上。
该示例场景一中,各终端210中还可以安装有客户端211,上述过程也可以通过客户端211实现。
其中,该终端210包括但不限于个人计算机(personal computer,PC)、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备、智能电视、车载设备、个人数字助理(personal digital assistant,PDA)等具备动画特效处理能力的电子设备。客户端211可以是具有视频处理功能的客户端,客户端具体可以是预装在终端210中的客户端,或者是嵌入在第三方应用中的客户端,或者是通过网页访问的网页客户端等。
示例场景二:
视频处理设备通过服务器300实现。
请参照图3,为本申请实施例提供的另一种视频处理方法的场景图,在该场景中,包括多个终端210和服务器300,各终端210对应安装有客户端211。
该示例场景二中,客户端211在获得待处理的视频文件,以及用户选择的目标动画特效之后,可以将视频文件以及目标动画特效发送给服务器300,服务器300接收到之后,按照本申请实施例中的视频处理方法,对视频进行处理,获得动画特效处理后的视频,服务器300将处理后的视频文件发送给客户端211,用户可以通过客户端211显示并发送。
其中,终端210和服务器300之间可通过一个或者多个通信网络进行连接,其中,该通信网络可以是有线网络,也可以是无线网络,例如无线网络可以是移动蜂窝网络,或者可以是无线保真(Wireless-Fidelity,WIFI)网络,当然还可以是其他可能的通信网络,本申请实施例对此不做限制。
其中,服务器300可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
作为一种实施例,请参照图4,表示视频处理设备的结构示例图,具体示例场景一中的终端210和示例场景二中的服务器300可以包括解码器401和编码器402,解码器401和编码器402可以是设备中的软件模块,也可以是硬件模块。解码器401用于对目标动画或者视频进行解码,比如解码器401解码PAG动画时,具体是将PAG二进制文件反序列化为客户端可以操作的数据对象,解码得到的数据结构是上述的PAG的数据结构。编码器402可以用于对替换后的帧数据等进行渲染封装,进而合成目标视频文件等。
在一种可能的具体应用场景中,该方法可以应用于视频录制场景中,以录制游戏视频场景为例,客户端211在录制游戏视频之后,客户端211可以将游戏视频发送给服务器300,服务器300对游戏视频进行分析,为游戏视频添加符合该游戏视频风格的动画特效文件,按照本申请实施例中的视频处理方法,对游戏视频进行处理,并将处理后的游戏视频文件反馈给客户端211,从而实现视频录制过程中对视频进行智能化处理。
应当说明的是,上述图2~图3是对本申请的应用场景进行示例,本申请实施例并不进行限制。对于图2或图3所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中进行具体描述,此处不再赘述。
下面基于图2论述的应用场景,对本申请实施例涉及的视频处理方法进行介绍。请参照图5,表示一种视频处理方法的流程示意图,该方法包括:
S501,终端210获取目标动画特效文件。
在用户想要对某个视频进行处理时,用户可以开启终端210对应的视频处理功能,用户可以从预存的多个视频文件中选择一个视频文件,或者拍摄得到一个视频,终端210可以基于用户的选择操作或拍摄操作,确定用户需要进行处理的视频文件。具体终端210中的解码器401可以对拍摄得到的视频进行加密,获得待处理的视频文件。用户在选择某个视频文件之后,可以指定该视频文件中的某个视频文件片段,终端210根据用户进行的指定视频文件片段的操作,将用户指定的文件片段作为待处理的视频文件。
在对视频文件进行处理时,需要利用动画特效文件,下面对生成动画特效文件的方式进行示例说明。
终端210中可以预存有各动画特效的动画特效文件,或者终端210可以从网络资源中下载动画特效文件,或者终端根据用户或工作人员的操作,生成动画特效文件。
具体的,终端210可以根据针对至少一个视频图层中子图层的可替换设置操作,确定至少一个视频图层中的可替换子图层,终端210根据至少一个视频图层,以及至少一个视频图层中的可替换子图层,生成动画特效文件。
作为一种实施例,动画特效文件还可以包括可替换子图层的唯一标识,以及与唯一标识关联的该子图层的图层数据。动画特效文件还可以包括用于指示对动画特效文件进行编辑方式的指示信息,比如前文论述的大贴纸处理方式还是小贴纸处理方式。比如可以将唯一标识作为键(key),将可替换子图层的图层数据以值(value)对应存储。
比如用户或者工作人员可以基于多个视频图层,配置视频图层中可以替换的子图层,终端210根据该配置信息,生成动画特效文件。多个视频图层可以是导出的某个动画特效的,或者也可以创建的多个图层,或者是多个动画特效组合的多个视频图层,具体不限。在实际应用中,可以是用户创建动画特效文件,或者也可以是直接使用工作人员创建的动画特效文件,或者用户后期可以对动画特效文件进行修改等,以生成新的动画特效文件。
例如,用户通过配置JSON文件来配置需要的PAG特效文件,具体需要配置可替换的子图层,终端210根据该配置文件,就能显示该用户配置的动画特效。下面以配置PAG特效文件为例,对该PAG一种配置信息的代码示例如下:
终端210在获得该配置信息之后,可以生成各可替换子图层的唯一标识,并将唯一标识与可替换子图层的图层数据进行关联,进而获得PAG特效文件。
当生成各个动画特效文件中之后,用户进行选择动画特效时,该终端可以显示各类动画特效的动画特效标识,动画特效标识用于指示对应的动画特效标识,比如可以采用动画特效的名称、动画特效中的某一视频图层等作为动画特效标识。用户可以从多个动画特效标识选择自己想要添加的目标动画特效标识,终端210根据该选择操作确定用户想要进行处理的目标动画特效。终端210中可以预存有各动画特效对应的动画特效文件,或者终端210可以从服务器300中获取该目标动画特效对应的目标动画特效文件。
作为一种实施例,终端210可以根据该待处理的视频文件,确定出与该视频文件匹配的动画特效,并向用户推荐匹配出的动画特效。用户可以从匹配出的动画特效中选择自己想要的动画特效。
具体的,终端210中预存有各动画特效的标签,终端210可以选择与视频文件的标签匹配度最高的动画特效。或者,终端210可以根据视频文件的类型,选择与该视频文件的类型匹配的动画特效。或者,终端210根据各用户选择的动画特效的选择频次,为该用户推荐选择当前时间段内选择频次最高的动画特效。或者,终端210可以根据用户选择的视频文件的风格,确定出该风格相近的动画特效,为该用户推荐对应的动画特效。
例如,请参照图6,表示一种终端210展示各个动画特效的界面示意图。终端210在接收用户输入的视频文件之后,在该界面中显示该视频文件610,以及在视频文件610的下方显示为该视频文件610推荐的多个动画特效620,多个动画特效620具体如图6中的录像机动画特效621、夏天的风动画特效622等。
S502,终端210确定出视频文件中各视频帧与目标特效文件中视频图层之间的映射关系。
终端210可以根据视频文件的时长,以及目标特效文件的时长,确定各视频帧和视频图层之间的映射关系。视频文件的时长是指视频的总时长,目标特效文件的时长是指目标动画特效的总时长。映射关系可以理解为某个视频图层对应哪些视频帧,以便于后续根据该映射关系,进行视频处理。
当目标动画特效文件与视频文件的时长相等时,且动画特效文件在单位时长内包括的视频图层的数量相同,与视频文件在单位时长内包括的视频帧的数量相同时,视频图层与视频帧一一对应,即一个视频图层对应一个视频帧。
例如,目标动画特效文件时长为3S,视频文件为3S,目标动画特效文件在1S内包括24个视频图层,视频文件在1S内包括24个视频帧,那么一个视频图层则对应一个视频帧。
当视频文件与目标动画特效的时长不相等时,可以根据两个文件的时长比例,确定视频图层与视频帧之间的对应关系。比如视频文件的时长为零,确定所有视频图层均对应该视频文件的起始视频帧。
例如,目标动画特效文件的时长为20S,视频文件的时长为10S,那么两个视频图层对应视频文件中的一个视频帧。
应当说明的是,一个视频图层包括的多个子图层在显示时没有时间上的先后顺序,因此当确定出视频帧与视频图层之间的映射关系之后,也就相当于获得了子图层与视频帧之间的映射关系。比如视频图层对应第一视频帧,那么该视频图层中的所有子图层均对应该第一视频帧。
例如,请参图7,表示视频文件和目标动画特效文件之间的映射示例图,视频文件的时长为1S,分别包括视频帧a,视频a+1…视频帧a+23。目标动画特效文件的时长为2S,在1S内包括的视频图层数量为24,具体包括视频帧b,视频帧b+1…视频帧b+47,因此可以确定一个视频帧对应两个视频图层,因此该视频文件与目标动画特效文件之间的映射关系如图7所示,以视频帧a为例,该视频帧a对应视频帧b和b+1,依次类推。
S503,终端210根据映射关系,基于每个视频帧和对应的视频图层获得各个目标视频帧。
终端210可以根据视频图层与视频帧之间的映射关系,对视频帧或视频图层进行处理,分别获得各目标视频帧。具体解码器401获得映射关系之后,可以将视频帧以及对应的视频图层分别发送给编码器402,编码器402对各帧进行处理,封装成对应的目标视频帧。下面以获得一个目标视频帧的方式为例,对获得各视频帧进行的方式进行示例说明:
第一种:
终端210根据映射关系,对每个视频图层进行处理,获得目标视频帧。
终端210确定出与该视频图层对应的视频帧,如果确定视频图层为可编辑图层,则利用对应的视频帧的帧数据替换到该可编辑图层中的可替换子图层的图层数据。如果可编辑图层包括一个可替换子图层,则帧数据只替换该可替换子图层的图层数据,对于可编辑图层的其他子图层不做替换处理。如果可编辑图层包括多个可替换子图层,则帧数据替换多个可替换子图层的图层数据,替换后的视频图层则为目标视频帧,也就是说,目标视频帧的帧数据是实质是根据上述过程获得的该视频图层中替换后的图层数据获得的。如果视频图层不是可编辑图层,那么不对该视频图层进行处理,该视频图层作为目标视频帧,也就是说,目标视频帧的帧数据是根据该视频图层的图层数据获得的。
作为一种实施例,为了使得生成的视频效果更好,当视频图层为可编辑图层时,可以将可替换子图层的图层数据替换为可编辑图层对应的视频帧中与图层数据类型相同的帧数据。数据的类型相同是指数据对应描述的是同类对象,比如两部分数据均是描述图片,那么视为这两部分数据相同。
具体的,当可替换子图层为文字层时,那么可以利用视频帧的帧数据中的文字内容替换可替换图层的文字内容,获得目标视频帧。当可替换子图层为图片层时,那么可以利用视频帧的帧数据中的图片替换可替换图层中的图片,获得目标视频帧,具体可以利用视频帧的图片对应的图片路径去替换可替换图层中的图片路径。实际上,可编辑图层可能同时包括文字层的可替换子图层,和层的可替换图层,终端210可以根据对应视频帧的文字内容替换文字层的可替换图层中的文字内容,终端210可以根据对应视频帧的图片替换文字层的可替换图层中的图片。
例如目标动画特效文件为PAG特效文件,终端210可以通过getLayersByEditableIndex接口,获取当前PAG特效文件的可替换子图层的唯一标识,如果当前可替换子图层是文字层,根据标记的KEY查找对应的文字内容,替换文字层之中的文字内容,写入当前PAG特效文件。如果当前的可替换子图层是图片层,也是根据标记的KEY查找对应的图片路径,编码以后写入当前可替换子图层。
在本申请实施例中,以对应类型相同的数据去替换,也就是原来视频图层的内容为文字的地方,替换后的视频图层也是对应文字,原来视频图层的内容是为图片的地方,替换后的视频图层也是对应图片,这样一来,生成的目标视频帧的呈现效果更贴合原视频图层,使得最后生成的目标视频文件呈现效果更好。
如前文论述的内容,目标动画特效文件实际上包括的数据很多,在替换的时候,如果要从目标动画特效文件中查找这些数据是比较麻烦的,因此,本申请实施例中在查找时,可以根据可替换子图层的唯一标识,查找该可替换子图层的图层数据,从而可以快速替换图层数据。
以此类推,终端210在对各视频图层分别进行上述处理之后,能获得各目标视频帧。
例如,以PAG特效文件渲染画面为主,待处理的视频文件为辅,待处理的视频文件用FFMpeg解码成视频帧,将对应的视频帧的帧数据实时替换到PAG特效文件的可替换子图层中,获得目标视频帧。具体比如在大贴纸处理方式中,对视频图层进行渲染时,具体是基于PAG Composition中的数据对视频图层进行渲染。
例如,请参照图8,图8中a、b和c分别表示视频图层中的三个子图层,一个文字层的可替换子图层a,该图层上标识有“讯美春风处处新”,一个文字层的可替换子图层b,该图层上标识有“腾飞岁月家家富”,一个图片层的不可以替换的子图层c,如图8中c所示,该图片上包括锦鲤图案等,该视频图层对应图8中d所示的视频帧,该视频帧显示有“欢天喜地度佳节”、“张灯结彩迎新春”、以及其他图像。利用该视频帧替换视频图层时,可以利用视频帧上的”欢天喜地度佳节”、“张灯结彩迎新春”分别替换子图层a和可替换子图层b,从而合成如图8中e所示的目标视频帧。
第二种:
终端210根据映射关系,对每个视频帧进行处理,获得目标视频帧。
当视频帧对应的视频图层为不可编辑的图层时,根据映射关系,将视频帧对应的视频图层覆盖到视频帧上,具体可以将将视频帧对应的视频图层的图层数据覆盖到视频帧的帧数据上,得到目标视频帧。
当视频帧对应的视频图层为可编辑图层,将可编辑图层中除了可替换子图层之外的子图层分别覆盖到视频帧上,具体可以将可编辑图层中除了可替换子图层之外的子图层的图层数据分别覆盖到视频帧的帧数据上,获得目标视频帧。
作为一种实施例,在覆盖时,是利用子图层的图层数据覆盖视频帧中同类型的帧数据。相同类型的帧数据可以参照前文论述的内容,此处不再赘述。比如视频帧的帧数据包括描述图片的数据,那么就用图片层的子图层的图层数据去替换该视频帧中描述图片的数据。比如视频帧的帧数据包括描述文字的数据,那么就用文字层的子图层的图层数据去替换该视频帧中描述文字的数据,简言之,文字覆盖文字,图片覆盖图片。
以待处理的视频文件为主,PAG特效文件为辅,渲染PAG特效文件覆盖到视频文件画面的某个位置上。获得目标视频帧。
以此类推,终端210在对各视频帧分别进行上述处理之后,能获得各目标视频帧。
作为一种实施例,终端210可以根据目标动画特效文件中的视频编辑方式的指示信息确定到底采用哪种方式对视频进行处理。如果目标动画特效文件中的视频编辑方式的指示信息用于指示采用大贴纸处理方式处理视频,则终端210按照方式一处理视频。如果目标动画特效文件中的视频编辑方式的指示信息用于指示采用小贴纸处理方式处理视频,则终端210按照方式二处理视频。
S504,终端210根据各个目标视频帧,获得目标视频文件。
在获得各目标视频帧的同时,对各目标视频帧进行渲染,并对各目标视频帧进行编码,比如编码成视频帧AVFrame,对多个目标视频帧进行封装,获得目标视频文件。
作为一种实施例,获得各目标视频帧之后,可以对多个目标视频帧中各目标视频帧的目标视频帧数据进行数据格式转换,得到可渲染数据格式的目标视频帧数据;对可渲染数据格式的目标视频帧数据进行逐帧渲染,获得动画特效处理后的目标视频文件。具体的,由于视频帧需要的是YUV编码,与图片的编码RGB不一样,需要图片编码转换。具体转码方式如下:
Y=0.299R+0.587G+0.144B
U=-0.147R-0.289G+0.436B
V=0.615R-0.515G-0.1B
在将各目标视频帧的帧数据转换为可渲染数据格式的目标视频帧数据,终端210可以保存各目标视频帧数据中的上下文数据,比如在大贴纸处理方式中,终端210需要存储每个视频图层中各个子图层的叠合顺序。终端210可以利用编码器对目标视频帧数据进行编码,编码器可以对目标视频帧数据进行编码。
终端210对可渲染数据格式的目标视频帧数据进行逐帧渲染,获得动画特效处理后的目标视频帧文件。
作为一种实施例,上述是以处理视频文件中的视频流为例进行说明,在实际处理过程中,目标动画特效文件还可以包括音频,也可以利用目标动画特效文件音频对视频文件中的音频进行处理。比如用目标动画特效文件的音频去替换视频文件的音频,获得处理后的音频。
在编码器获得目标视频文件之后,可以封装目标视频文件以及处理后的音频,生成最终的音视频。
终端210在获得目标视频文件之后,可以播放处理后的视频,用户可以查看添加动画特效之后的视频效果。
在图3论述的应用场景的基础上,下面对本申请实施例涉及的视频处理方法进行介绍。
请参照图9,表示终端210和服务器300之间的交互示意图,该过程包括:
S901,终端210获得目标动画特效文件,以及待处理的视频文件。
目标动画特效文件的获得方式,以及视频文件的获得方式可以参照前文论述的内容,此处不再赘述。
S902,终端210将目标动画特效文件以及待处理的视频文件发送给服务器300。
如果终端210获得用户选择的目标动画特效文件的标识时,可以将目标动画特效标识发送给服务器300。服务器300可以基于该目标动画特效标识,获得对应的目标动画特效。
S903,服务器300确定视频文件中各视频帧与目标动画特效文件中各视频图层之间的映射关系。
确定映射关系的方式可以参照前文论述的内容,此处不再赘述。
S904,服务器300根据映射关系,基于每个视频帧和对应的视频图层获得各个目标视频帧。
获得目标视频帧的方式可以参照前文论述的内容,此处不再赘述。
S905,服务器300根据各个目标视频帧,获得目标视频文件。
获得目标视频文件的方式可以参照前文论述的内容,此处不再赘述。
S906,服务器300将目标视频文件发送给终端210。
终端210获得目标视频文件之后,可以显示该目标视频文件。
基于同一发明构思,本申请实施例提供一种视频处理装置,该装置相当于设置在前文论述的视频处理设备中,具体相当于设置在前文论述的终端210中,或者前文论述的服务器300中,请参照图10,该视频处理装置1000包括:
获取模块1001,用于获取对待处理的视频文件进行动画特效处理的目标动画特效文件;其中,目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,至少一个视频图层中包括至少一个可编辑图层,可编辑图层中包括至少一个可替换子图层;
确定模块1002,用于根据视频文件的时长,以及目标动画特效文件的时长,确定出视频文件中各视频帧与目标特效文件中视频图层之间的映射关系;
获得模块1003,用于根据映射关系,基于每个视频帧和对应的视频图层分别获得各个目标视频帧;其中,当视频帧对应的视频图层为可编辑图层时,将可编辑图层中的可替换子图层的图层数据替换为对应的视频帧的帧数据以获得目标视频帧;
合成模块1004,用于合成获得的各个目标视频帧,获得动画特效处理后的目标视频文件。
在一种可能的实施例中,获得模块1003具体用于针对至少一个视频图层中每个视频图层执行如下过程,获得目标视频帧:
当视频图层为可编辑图层时,根据映射关系,将可编辑图层中的可替换子图层替换为视频帧,目标视频帧为替换后的可编辑图层;
当视频图层为不可编辑的视频图层时,目标视频帧为视频图层。
在一种可能的实施例中,获得模块1003具体用于:
将可替换子图层的图层数据替换为可编辑图层对应的视频帧中与图层数据类型相同的帧数据。
在一种可能的实施例中,获得模块1003具体用于执行如下的一种或几种:
若可编辑图层中的可替换子图层为文字层,则将可替换子图层的文字内容替换为可编辑图层对应的视频帧中的文字内容;或,
若可编辑图层中可替换子图层为图片层,则将可替换子图层中图片关联的图片路径替换为可编辑图层对应的视频帧中图片关联的图片路径。
在一种可能的实施例中,目标动画特效文件还包括与替换子图层的图层数据关联的可替换子图层的唯一标识;以及,获得模块1003还用于:
在当视频图层为可编辑图层时,根据映射关系,将可编辑图层中的可替换子图层替换为视频帧之前,根据可替换子图层的唯一标识,获得与可替换子图层对应的图层数据。
在一种可能的实施例中,获得模块1003具体用于针对视频文件中的每个视频帧执行如下过程,获得目标视频帧:
当视频帧对应的视频图层为不可编辑的图层时,根据映射关系,将视频帧对应的视频图层覆盖到视频帧上,目标视频帧为覆盖后的视频帧;
当视频帧对应的视频图层为可编辑图层,则将可编辑图层中除了可替换子图层之外的子图层覆盖到视频帧上,目标视频帧为覆盖后的视频帧。
在一种可能的实施例中,合成模块1004具体用于:
对多个目标视频帧中各目标视频帧的目标视频帧数据进行数据格式转换,得到可渲染数据格式的目标视频帧数据;
对可渲染数据格式的目标视频帧数据进行逐帧渲染,获得动画特效处理后的目标视频文件。
在一种可能的实施例中,目标动画特效文件是通过如下方式生成的:
获得至少一个视频图层;
根据对至少一个视频图层的视频图层中任一子图层进行的可替换设置操作,确定至少一个视频图层中的可编辑图层中的可替换子图层;
根据至少一个视频图层,以及至少一个视频图层中的可替换子图层,生成目标动画特效文件。
在一种可能的实施例中,获取模块901用于:
响应于针对多个动画特效标识进行的选择操作,获取选择的动画特效标识关联的目标动画特效文件。
基于同一发明构思,本申请实施例还提供了一种计算机设备。
请参照图11,计算机设备1100以通用计算机设备的形式表现。计算机设备1100的组件可以包括但不限于:至少一个处理器1110、至少一个存储器1120、连接不同系统组件(包括处理器1110和存储器1120)的总线1130。
总线1130表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器1120可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1121和/或高速缓存存储器1122,还可以进一步包括只读存储器(ROM)1123。
存储器1120还可以包括具有一组(至少一个)程序模块1125的程序/实用工具1126,这样的程序模块1125包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。处理器1110用于执行存储器1120存储的程序指令等实现前文论述的视频处理方法。处理器1110还可以用于实现图10中装置的功能。处理器1110还可以用于实现前文论述的终端210或服务器300的功能。
计算机设备1100也可以与一个或多个外部设备1140(例如键盘、指向设备等)通信,还可与一个或者多个使得终端能与计算机设备1100交互的设备通信,和/或与使得该计算机设备1100能与一个或多个其它设备进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入/输出(I/O)接口1150进行。并且,计算机设备1100还可以通过网络适配器1160与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1160通过总线1130与用于计算机设备1100的其它模块通信。应当理解,尽管图中未示出,可以计算机设备1100可以结合使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
基于同一发明构思,本申请实施例提供一种存储介质,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行前文论述的视频处理方法。该存储介质泛指计算机可读存储介质。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种视频处理方法,其特征在于,包括:
获取对待处理的视频文件进行动画特效处理的目标动画特效文件;其中,所述目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,所述至少一个视频图层中包括至少一个可编辑图层,所述可编辑图层中包括至少一个可替换子图层;
根据所述视频文件的时长,以及所述目标动画特效文件的时长,确定出所述视频文件中视频帧与所述目标动画特效文件中视频图层之间的映射关系,其中,当所述视频文件的时长与所述目标动画特效文件的时长相等,且当所述视频文件在单位时长内包括的视频帧的数量与所述目标动画特效文件在单位时长内包括的视频图层的数量相同时,所述映射关系为一个所述视频帧对应一个所述视频图层;当所述视频文件的时长与所述目标动画特效文件的时长不相等时,所述映射关系是根据所述视频文件的时长与所述目标动画特效文件的时长的比例确定的;
当所述视频图层为可编辑图层时,根据所述映射关系,将所述可编辑图层中的所述可替换子图层的图层数据替换为所述视频帧的帧数据,将替换后的所述可编辑图层作为目标视频帧;
当所述视频图层为不可编辑的视频图层时,将所述视频图层作为目标视频帧;
合成获得的各个所述目标视频帧,获得所述动画特效处理后的目标视频文件。
2.如权利要求1所述的方法,其特征在于,所述当所述视频图层为可编辑图层时,根据所述映射关系,将所述可编辑图层中的可替换子图层的图层数据替换为所述视频帧的帧数据,包括:
将所述可替换子图层的图层数据替换为所述可编辑图层对应的视频帧中与图层数据类型相同的帧数据。
3.如权利要求2所述的方法,其特征在于,将所述可替换子图层的图层数据替换为所述可编辑图层对应的视频帧中与图层数据类型相同的帧数据,包括如下的一种或几种:
若所述可编辑图层中的可替换子图层为文字层,则将所述可替换子图层的文字内容替换为所述可编辑图层对应的视频帧中的文字内容;或,
若所述可编辑图层中的可替换子图层为图片层,则将所述可替换子图层中图片关联的图片路径替换为所述可编辑图层对应的视频帧中图片关联的图片路径。
4.如权利要求2或3所述的方法,其特征在于,所述目标动画特效文件还包括与所述可替换子图层的图层数据关联的可替换子图层的唯一标识;以及,
在当所述视频图层为可编辑图层时,根据所述映射关系,将所述可编辑图层中的可替换子图层替换为视频帧之前,包括:
根据所述可替换子图层的唯一标识,获得与所述可替换子图层对应的图层数据。
5.如权利要求 1~3中任一项所述的方法,其特征在于,所述合成获得的各个所述目标视频帧,获得所述动画特效处理后的目标视频文件,包括:
对各个所述目标视频帧的目标视频帧数据进行数据格式转换,得到可渲染数据格式的目标视频帧数据;
对所述可渲染数据格式的目标视频帧数据进行逐帧渲染,获得所述动画特效处理后的目标视频文件。
6.如权利要求1~3中任一项所述的方法,其特征在于,所述目标动画特效文件是通过如下方式生成的:
获得至少一个所述视频图层;
根据对所述至少一个所述视频图层的视频图层中任一子图层进行的可替换设置操作,确定所述至少一个所述视频图层中的可编辑图层中的可替换子图层;
根据所述至少一个所述视频图层,以及所述至少一个所述视频图层中的可替换子图层,生成所述目标动画特效文件。
7.如权利要求1~3中任一项所述的方法,其特征在于,所述获取对待处理的视频文件进行动画特效处理的目标动画特效文件,包括:
响应于针对多个动画特效标识进行的选择操作,获取选择的动画特效标识关联的目标动画特效文件。
8.一种视频处理装置,其特征在于,包括:
获取模块,用于获取对待处理的视频文件进行动画特效处理的目标动画特效文件;其中,所述目标动画特效文件包括至少一个视频图层的图层数据、以及目标动画特效的时长,每个视频图层中包括至少一个子图层,所述至少一个视频图层中包括至少一个可编辑图层,所述可编辑图层中包括至少一个可替换子图层;
确定模块,用于根据所述视频文件的时长,以及所述目标动画特效文件的时长,确定出所述视频文件中各视频帧与所述目标动画特效文件中视频图层之间的映射关系,其中,当所述视频文件的时长与所述目标动画特效文件的时长相等,且当所述视频文件在单位时长内包括的视频帧的数量与所述目标动画特效文件在单位时长内包括的视频图层的数量相同时,所述映射关系为一个所述视频帧对应一个所述视频图层;当所述视频文件的时长与所述目标动画特效文件的时长不相等时,所述映射关系是根据所述视频文件的时长与所述目标动画特效文件的时长的比例确定的;
获得模块,用于当所述视频图层为可编辑图层时,根据所述映射关系,将所述可编辑图层中的所述可替换子图层的图层数据替换为所述视频帧的帧数据,将替换后的所述可编辑图层作为目标视频帧;当所述视频图层为不可编辑的视频图层时,将所述视频图层作为目标视频帧;
合成模块,用于合成获得的各个所述目标视频帧,获得所述动画特效处理后的目标视频文件。
9.如权利要求8所述的装置,其特征在于,所述获得模块具体用于:
将所述可替换子图层的图层数据替换为所述可编辑图层对应的视频帧中与图层数据类型相同的帧数据。
10.一种计算机设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求1~7中任一项所述的方法。
11.一种存储介质,其特征在于,所述存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010606608.4A CN111899155B (zh) | 2020-06-29 | 2020-06-29 | 视频处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010606608.4A CN111899155B (zh) | 2020-06-29 | 2020-06-29 | 视频处理方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111899155A CN111899155A (zh) | 2020-11-06 |
CN111899155B true CN111899155B (zh) | 2024-04-26 |
Family
ID=73207235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010606608.4A Active CN111899155B (zh) | 2020-06-29 | 2020-06-29 | 视频处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111899155B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112764636A (zh) * | 2021-01-29 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 视频处理方法、装置、电子设备和计算机可读存储介质 |
CN113018867A (zh) * | 2021-03-31 | 2021-06-25 | 苏州沁游网络科技有限公司 | 一种特效文件的生成、播放方法、电子设备及存储介质 |
CN113438412A (zh) * | 2021-05-26 | 2021-09-24 | 维沃移动通信有限公司 | 图像处理方法和电子设备 |
CN113434733B (zh) * | 2021-06-28 | 2022-10-21 | 平安科技(深圳)有限公司 | 基于文本的视频文件生成方法、装置、设备及存储介质 |
CN113556576B (zh) * | 2021-07-21 | 2024-03-19 | 北京达佳互联信息技术有限公司 | 视频生成方法及设备 |
CN113542855B (zh) * | 2021-07-21 | 2023-08-22 | Oppo广东移动通信有限公司 | 视频处理方法、装置、电子设备和可读存储介质 |
CN114125556B (zh) * | 2021-11-12 | 2024-03-26 | 深圳麦风科技有限公司 | 视频数据的处理方法、终端和存储介质 |
CN114173192A (zh) * | 2021-12-09 | 2022-03-11 | 广州阿凡提电子科技有限公司 | 一种基于导出视频添加动态特效的方法及系统 |
CN114900736A (zh) * | 2022-03-28 | 2022-08-12 | 网易(杭州)网络有限公司 | 视频生成方法、装置和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455474A (zh) * | 2013-08-16 | 2013-12-18 | 北京奇艺世纪科技有限公司 | 一种影像素材的编辑方法和系统 |
CN109801347A (zh) * | 2019-01-25 | 2019-05-24 | 北京字节跳动网络技术有限公司 | 一种可编辑图像模板的生成方法、装置、设备和介质 |
CN110174978A (zh) * | 2019-05-13 | 2019-08-27 | 广州视源电子科技股份有限公司 | 数据处理方法、装置、智能交互平板及存储介质 |
CN110266971A (zh) * | 2019-05-31 | 2019-09-20 | 上海萌鱼网络科技有限公司 | 一种短视频制作方法和系统 |
CN110582018A (zh) * | 2019-09-16 | 2019-12-17 | 腾讯科技(深圳)有限公司 | 一种视频文件处理的方法、相关装置及设备 |
CN110784739A (zh) * | 2019-10-25 | 2020-02-11 | 稿定(厦门)科技有限公司 | 基于ae的视频合成方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170385A1 (en) * | 2012-06-22 | 2015-06-18 | Google Inc. | Editing a feature within a map |
-
2020
- 2020-06-29 CN CN202010606608.4A patent/CN111899155B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455474A (zh) * | 2013-08-16 | 2013-12-18 | 北京奇艺世纪科技有限公司 | 一种影像素材的编辑方法和系统 |
CN109801347A (zh) * | 2019-01-25 | 2019-05-24 | 北京字节跳动网络技术有限公司 | 一种可编辑图像模板的生成方法、装置、设备和介质 |
CN110174978A (zh) * | 2019-05-13 | 2019-08-27 | 广州视源电子科技股份有限公司 | 数据处理方法、装置、智能交互平板及存储介质 |
CN110266971A (zh) * | 2019-05-31 | 2019-09-20 | 上海萌鱼网络科技有限公司 | 一种短视频制作方法和系统 |
CN110582018A (zh) * | 2019-09-16 | 2019-12-17 | 腾讯科技(深圳)有限公司 | 一种视频文件处理的方法、相关装置及设备 |
CN110784739A (zh) * | 2019-10-25 | 2020-02-11 | 稿定(厦门)科技有限公司 | 基于ae的视频合成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111899155A (zh) | 2020-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111899155B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN111899322B (zh) | 视频处理方法、动画渲染sdk和设备及计算机存储介质 | |
CN106611435B (zh) | 动画处理方法和装置 | |
CN111193876B (zh) | 视频中添加特效的方法及装置 | |
CN110463210A (zh) | 用于生成媒体数据的方法 | |
CN109840879B (zh) | 图像渲染方法、装置、计算机存储介质及终端 | |
CN107767437B (zh) | 一种多层混合异步渲染方法 | |
CN112102422B (zh) | 图像处理方法及装置 | |
CN111246122A (zh) | 一种多张照片合成视频的方法和装置 | |
CN111583348B (zh) | 图像数据编码方法及装置、显示方法及装置、电子设备 | |
JP7165272B2 (ja) | 動画データ符号化/復号方法、装置、プログラム及びコンピュータ装置 | |
CN110213640B (zh) | 虚拟物品的生成方法、装置及设备 | |
CN114598937B (zh) | 动画视频生成、播放方法及装置 | |
KR100882250B1 (ko) | 동적인 가상 이미지를 합성하기 위한 방법 | |
CN104991950A (zh) | 一种图片生成方法、显示方法及相应装置 | |
CN111064986B (zh) | 带透明度的动画数据发送方法、播放方法和计算机设备 | |
CN114222185B (zh) | 视频播放方法、终端设备及存储介质 | |
CN115250335A (zh) | 视频处理方法、装置、设备及存储介质 | |
CN117376660A (zh) | 字幕元素的渲染方法、装置、设备、介质及程序产品 | |
CN111935492A (zh) | 一种基于视频文件的直播礼物展示及构建方法 | |
WO2024051394A1 (zh) | 视频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN116824007A (zh) | 动画播放方法、动画生成方法、装置及电子设备 | |
Jamil et al. | Overview of JPEG Snack: A Novel International Standard for the Snack Culture | |
CN113259712B (zh) | 一种视频处理方法和相关装置 | |
CN115037960B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |