掌桥专利:专业的专利平台
掌桥专利
首页

视频处理方法、装置、设备及存储介质

文献发布时间:2024-04-18 19:58:30


视频处理方法、装置、设备及存储介质

技术领域

本申请实施例涉及互联网技术领域,涉及但不限于一种视频处理方法、装置、设备及存储介质。

背景技术

相关技术中,在进行特效视频制作时,通常采用代码实现,或者用动态图片(例如动画特效)或播放视频的方式播放特效来实现。其中,动态图片的制作通常采用Lottie动画、GIF动画、APNG动画、WebP格式和MP4格式视频等方式实现。

但是,上述代码实现的方式是很费时费力的,需要编写大量的特效代码来实现;而动态图片的方式,通常只支持软件解码,且制作的动画特效存在杂边等边界不清晰的问题,同时动画特效的文件也比较大,会极大的占用内存开销;播放视频的方式不支持透明度,因此,播放的特效视频无法完全融合到当前画面的背景图像中。由此可见,相关技术中的特效视频制作和播放方案,至少存在制作方式不便捷、特效还原度低,且无法支持特效视频的透明度等问题。

发明内容

本申请实施例提供一种视频处理方法、装置、设备及存储介质,至少应用于动画制作领域和特效视频处理领域,能够简化特效视频的制作方式,支持特效视频的透明度信息,从而实现在透明度特效视频播放时能够高度还原原始特效视频中的特效效果,极大的降低透明度特效视频的制作成本以及制作时对内存的占用量。

本申请实施例的技术方案是这样实现的:

本申请实施例提供一种视频处理方法,所述方法包括:

获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;针对每一所述原始视频帧,分别基于所述原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与所述原始视频帧对应的颜色图片和透明度图片;按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;对所述至少一张拼接图片进行视频转化处理,得到透明度拼接视频;基于所述预设配置信息和所述透明度拼接视频进行特效视频渲染,得到透明度特效视频。

本申请实施例提供一种视频处理装置,所述装置包括:获取模块,用于获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;图片生成模块,用于针对每一所述原始视频帧,分别基于所述原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与所述原始视频帧对应的颜色图片和透明度图片;拼接处理模块,用于按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;视频转化模块,用于对所述至少一张拼接图片进行视频转化处理,得到透明度拼接视频;渲染模块,用于基于所述预设配置信息和所述透明度拼接视频进行特效视频渲染,得到透明度特效视频。

在一些实施例中,所述图片生成模块还用于:将所述原始视频帧中每一像素点的颜色通道信息添加至第一画布图片的颜色通道中,得到与所述原始视频帧对应的颜色图片;将所述原始视频中每一像素点的透明度通道信息添加至第二画布图片的颜色通道中,得到与所述原始视频帧对应的透明度图片。

在一些实施例中,所述颜色通道信息包括RGB通道值,所述透明度通道信息包括透明度值;所述图片生成模块还用于:将所述原始视频帧中每一像素点的RGB通道值分别对应添加至所述第一画布图片的RGB通道中,得到与所述原始视频帧对应的颜色图片;以及,将所述原始视频帧中每一像素点的透明度值分别添加至所述第二画布图片的RGB通道中,得到与所述原始视频帧对应的颜色图片。

在一些实施例中,所述预设配置信息包括以下至少之一:透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值;所述拼接处理模块还用于:至少基于所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值,确定所述透明度图片在拼接画布中的起始位置和所述透明度图片的缩放比例;获取所述颜色图片在所述拼接画布中的第二位置信息;按照所述第二位置信息、所述起始位置和所述缩放比例,将每一所述原始视频帧的颜色图片和透明度图片添加至所述拼接画布中,形成所述至少一张拼接图片。

在一些实施例中,所述拼接处理模块还用于:基于所述透明度图片在拼接画布中的第一位置信息和所述透明度图片的尺寸参数,确定所述透明度图片在所述拼接画布中的起始位置;基于所述透明度图片的尺寸参数和所述透明度图片的偏移值,确定所述透明度图片的缩放比例。

在一些实施例中,所述拼接处理模块还用于:针对每一所述原始视频帧,将所述颜色图片添加至所述拼接画布中第二位置信息对应的位置,得到具有颜色图片的拼接画布;按照所述缩放比例对所述透明度图片进行缩放处理,得到缩放后的透明度图片;以所述起始位置为所述缩放后的透明度图片的起始位置,将所述缩放后的透明度图片添加至所述具有颜色图片的拼接画布中,得到一张拼接图片。

在一些实施例中,所述透明度拼接视频对应一视频压缩编码格式;所述装置还包括:信息获取模块,用于获取所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值;格式转换模块,用于按照预设数据存储格式,对所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值进行数据格式转换,得到配置信息字符串;插入模块,用于将所述配置信息字符串,插入至所述视频压缩编码格式的数据头的预设位置。

在一些实施例中,所述装置还包括:字符串获取模块,用于在按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理之前,从所述数据头的预设位置获取所述配置信息字符串;字符串解析模块,用于对所述配置信息字符串进行字符串解析,得到所述预设配置信息。

在一些实施例中,所述渲染模块还用于:对所述透明度拼接视频进行视频解码,得到所述透明度拼接视频中每一拼接图片的解码格式数据;对每一拼接图片的解码格式数据进行数据格式转换,得到每一拼接图片的颜色格式数据;其中,所述颜色格式数据包括颜色通道数据部分以及透明度通道数据部分;基于所述预设配置信息和所述拼接图片的颜色通道数据部分以及透明度通道数据部分进行特效视频渲染,得到所述透明度特效视频。

在一些实施例中,所述渲染模块还用于:基于所述预设配置信息,确定所述颜色通道数据部分中的每一颜色通道子数据与透明度通道数据部分中的每一透明度通道子数据之间的映射关系;将具有所述映射关系的颜色通道子数据和透明度通道子数据,确定为同一像素点的通道数据;将每一所述像素点的通道数据中的颜色通道子数据在所述颜色图片中的位置信息,确定为所述像素点的位置信息;按照每一像素点的位置信息,对每一像素点的通道数据进行特效视频渲染,得到所述透明度特效视频。

在一些实施例中,所述装置还包括:背景视频渲染模块,用于渲染当前运行应用的背景视频;视频添加模块,用于响应于特效触发操作,将所述透明度特效视频添加至所述背景视频的特定位置。

本申请实施例提供一种视频处理设备,包括:

存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现上述视频处理方法。

本申请实施例提供一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括可执行指令,可执行指令存储在计算机可读存储介质中;其中,视频处理设备的处理器从计算机可读存储介质中读取可执行指令,并执行可执行指令时,实现上述的视频处理方法。

本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现上述视频处理方法。

本申请实施例具有以下有益效果:针对原始特效视频中的每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,对应生成与原始视频帧对应的颜色图片和透明度图片,并将颜色图片和透明度图片进行拼接处理得到至少一张拼接图片,之后再对至少一张拼接图片进行视频转化处理,得到透明度拼接视频,从而基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。如此,由于在拼接图片中,既包含有原始视频帧的颜色通道信息,又包含有原始视频帧的透明度通道信息,这样使得生成的透明度拼接视频中也携带有原始特效视频的透明度信息,从而在进行特效视频渲染时,能够基于透明度信息渲染得到透明度特效视频,实现在透明度特效视频播放时能够高度还原原始特效视频中的特效效果,极大的降低透明度特效视频的制作成本以及制作时对内存的占用量。

附图说明

图1是采用Lottie动画制作动态图片的实现过程示意图;

图2是在Lottie动画设计中的不同按钮动画效果示意图;

图3是采用APNG技术制作的动画特效示意图;

图4是GIF动态图和WebP动态图大小对比示意图;

图5是本申请实施例提供的视频处理系统的一个可选的架构示意图;

图6是本申请实施例提供的视频处理设备的结构示意图;

图7是本申请实施例提供的视频处理方法的一个可选的流程示意图;

图8是本申请实施例提供的视频处理方法的另一个可选的流程示意图;

图9是本申请实施例提供的视频处理方法的再一个可选的流程示意图;

图10是本申请实施例提供的光影特效示意图;

图11是本申请实施例提供的游戏礼物特效示意图;

图12是本申请实施例提供的粒子特效示意图;

图13是本申请实施例提供的火焰特效示意图;

图14是本申请实施例提供的视频处理方法的整体流程示意图;

图15是本申请实施例提供的由AE软件导出的游戏特效连续的PNG图片的示意图;

图16是本申请实施例提供的RGBA四个通道信息分离得到的两张图片示意图;

图17是本申请实施例提供的拼接图片示意图;

图18是本申请实施例提供的alpha配置信息的插入位置示意图;

图19是本申请实施例提供的渲染过程示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

这里,先对本申请实施例涉及的专业术语进行说明。

(1)alpha混合技术:指本申请实施例生成透明度特效视频的整体技术方案。

(2)alpha混合效果:是指运用本申请实施例的方法所做出的一些案例效果。

(3)光影特效:是指显示界面(例如游戏界面)中的光影显示效果。

(4)粒子特效:是指显示界面(例如游戏界面)中很多小物体的动态效果。

(5)硬解:即硬件解码,是视频解码的一种方式,指不使用中央处理器(CPU,Central Processing Unit)资源,利用专用硬件设备(例如,手机硬件设备,如图形处理器(GPU,Graphics Processing Unit)进行解码的方式。

(6)软解:即软件解码,是视频解码的一种方式,是指利用CPU解码。

在解释本申请实施例的视频处理方法之前,首先对相关技术中的方法进行说明。

相关技术中,在进行特效视频制作时,通常采用代码实现,或者用动态图片(例如动画特效)或播放视频的方式播放特效来实现。其中,动态图片的制作通常采用Lottie动画、GIF动画、APNG动画、WebP格式和MP4格式视频等方式实现。

这里,分别对Lottie动画、GIF动画、APNG动画、WebP格式和MP4格式视频等方式进行说明。

Lottie是Airbnb开源的一套跨平台的完整的动画效果解决方案,设计师可以使用特效制作工具(AE,Adobe After Effects)设计出动画之后,使用Lottie提供的Bodymovin插件将设计好的动画导出成JS对象简谱(JSON,JavaScript Object Notation)格式,就可以直接运用在不同的系统之上,无需其他额外操作。如图1所示,是采用Lottie动画制作动态图片的实现过程,通过AE 101和Bodymovin插件102将设计好的动画导出成JSON格式的JSON文件103,然后就可以应用到iOS系统、Android系统、Web和React Native(一种开源的跨平台移动应用开发框架)之上。在Lottie动画设计中,通常用于按钮等的动画效果,如图2所示,位置箭头201、指向箭头202和心形203等均可以通过Lottie动画设计实现。

GIF动画是指通过使用专门的动画制作工具或者采用逐帧拍摄对象的方法,让多个GIF图片按一定规律快速、连续播放运动的画面。例如,各种动态表情包都可以是GIF图做的。

基于PNG的位图动画格式(APNG,Animated Portable Network Graphics),是便携式网络图形(PNG,Portable Network Graphics)格式的动画扩展。APNG的第1帧为标准PNG图像,剩余的动画和帧速等数据放在PNG扩展数据块里。这里有点类似于视频的关键帧,关键帧有完整的图像信息,而两个关键帧之间只保留了变化的信息。简单来说,APNG支持全彩和透明,无杂边问题。如图3所示,是采用APNG技术制作的动画特效,其中,动画特效中的对象301的边界清晰无杂边。

WebP主要目标是使图片质量和JPEG(Joint Photographic Experts Group)格式质量相同的情况下,减少图片文件的体积,籍此减少互联网上图片的发送时间和流量消耗。图4是GIF动态图和WebP动态图大小对比,可以看出,WebP动态图402的图片大小远小于GIF动态图401的图片大小。

而MP4视频天然就是一帧一帧的动画。

针对上述几种动态图片的制作,其中,Lottie动画是字符串文件,支持软解,且无粒子特效。GIF动画,也是支持软解,只支持8位色彩,支持alpha透明背景但周围杂边非常明显。APNG,也是支持软解,文件比较大(相比alpha视频),但是解决了GIF动态图具有杂边的问题。WebP,也是支持软解,文件比较大(相比alpha视频)。MP4视频,支持硬解但不支持alpha透明背景。

相关技术中,代码实现的方式,程序员通过写代码是完全可以制作特效视频的,但考虑到效率,像复杂的特效视频(例如,粒子特效、光影特效、水波特效)用代码是很费时费力的。而通过播放视频的方案播放特效,这有一个很致命的问题是不支持透明度,也就是特效视频无法完全融合到画面背景中,看起来就是一个矩形贴在上面。

基于相关技术中所存在的问题,本申请实施例的视频处理方法,能够完美解决这些问题,同时在解码能力、使用便捷、特效还原、透明支持等等都更有优势。

本申请实施例提供的视频处理方法中,首先,获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片;然后,按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;并对至少一张拼接图片进行视频转化处理,得到透明度拼接视频;最后,基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频,并显示透明度特效视频。如此,由于在拼接图片中,既包含有原始视频帧的颜色通道信息,又包含有原始视频帧的透明度通道信息,这样使得生成的透明度拼接视频中也携带有原始特效视频的透明度信息,从而在进行特效视频渲染时,能够基于透明度信息渲染得到透明度特效视频,实现在透明度特效视频播放时能够高度还原原始特效视频中的特效效果,极大的降低透明度特效视频的制作成本以及制作时对内存的占用量。

下面说明本申请实施例的视频处理设备的示例性应用,本申请实施例提供的视频处理设备可以实施为终端,也可以实施为服务器。在一种实现方式中,本申请实施例提供的视频处理设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人、智能家电和智能车载设备等任意的具备视频渲染和显示功能、视频处理功能和游戏功能的终端;在另一种实现方式中,本申请实施例提供的视频处理设备还可以实施为服务器,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery Network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。下面,将说明视频处理设备实施为服务器时的示例性应用。

参见图5,图5是本申请实施例提供的视频处理系统的一个可选的架构示意图,本申请实施例以视频处理方法应用于特效视频制作为例进行说明,也就是说,最终生成的透明度特效视频可以是任意一种类型的特效视频。为实现支撑任意一个特效视频制作应用,本申请实施例的终端上至少安装有特效视频制作应用,或者,终端上安装有视频播放应用,在该视频播放应用中具有特效视频制作功能模块,通过该特效视频制作功能模块能够采用本申请实施例提供的视频处理方法,生成透明度特效视频。

本申请实施例中,视频处理系统10中至少包括终端100、网络200和服务器300,其中服务器300是特效视频制作应用的服务器。服务器300可以构成本申请实施例的视频处理设备。终端100通过网络200连接服务器300,网络200可以是广域网或者局域网,又或者是二者的组合。在运行特效视频制作应用时,终端100通过特效视频制作应用的客户端获取原始特效视频,并将原始特效视频封装至视频处理请求中,将视频处理请求发送给服务器300。服务器300解析视频处理请求得到原始特效视频,并获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;然后,针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片;按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;再然后,对至少一张拼接图片进行视频转化处理,得到透明度拼接视频;基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。服务器300在得到透明度特效视频之后,将透明度特效视频发送给终端100,并在终端100的当前界面的特定位置显示透明度特效视频。

在一些实施例中,还可以由终端100实现视频处理方法,也就是说,由终端作为执行主体获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片;以及,按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;并对至少一张拼接图片进行视频转化处理,得到透明度拼接视频;最后,基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。终端在得到透明度特效视频的同时,在当前界面上显示该透明度特效视频。

本申请实施例所提供的视频处理方法还可以基于云平台并通过云技术来实现,例如,上述服务器300可以是云端服务器。通过云端服务器获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息,或者,通过云端服务器生成与原始视频帧对应的颜色图片和透明度图片,或者,通过云端服务器对每一原始视频帧的颜色图片和透明度图片进行拼接处理,或者,通过云端服务器对至少一张拼接图片进行视频转化处理,或者,通过云端服务器基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频等。

在一些实施例中,还可以具有云端存储器,可以将原始特效视频存储至云端存储器中,或者,还可以将每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息存储至云端存储器中,或者,还可以将颜色图片、透明度图片、拼接图片、透明度拼接视频和透明度特效视频等存储至云端存储器中。这样,在输入原始特效视频时,可以从云端存储器中获取拼接图片,或者从云端存储器中获取透明度拼接视频,进而渲染得到透明度特效视频。

这里需要说明的是,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。

图6是本申请实施例提供的视频处理设备的结构示意图,图6所示的视频处理设备包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。视频处理设备中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统340。

处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,以及一个或多个输入装置332。

存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。

操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;

网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;

输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。

在一些实施例中,本申请实施例提供的装置可采用软件方式实现,图6示出了存储在存储器350中的一种视频处理装置354,该视频处理装置354可以是视频处理设备中的视频处理装置,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块3541、图片生成模块3542、拼接处理模块3543、视频转化模块3544和渲染模块3545,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。

在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的视频处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logi c Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件。

本申请各实施例提供的视频处理方法可以由视频处理设备来执行,其中,该视频处理设备可以是任意一种具备视频渲染和显示功能、视频处理功能和游戏功能的终端,或者也可以是服务器,即本申请各实施例的视频处理方法可以通过终端来执行,也可以通过服务器来执行,或者还可以通过终端与服务器进行交互来执行。

参见图7,图7是本申请实施例提供的视频处理方法的一个可选的流程示意图,下面将结合图7示出的步骤进行说明,需要说明的是,图7中的视频处理方法是通过服务器作为执行主体为例来说明的。

步骤S701,获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息。

这里,原始特效视频可以是采用特效制作工具制作得到的特效视频,其中,特效制作工具可以是AE软件(Adobe After Effects)。通过AE软件可以制作并输出原始特效视频。

原始特效视频可以包括任意类型的特效内容,例如,特效内容包括:粒子特效、光影特效、水波特效、游戏礼物特效、火焰特效等。在原始特效视频中,特效内容是具有一定透明度信息的内容,也就是说,原始视频帧中的每一像素点是包括有颜色通道信息和透明度通道信息的。如果终端显示该原始特效视频的话,则原始特效视频中的特效内容的显示效果是边界分明且无杂边的。举例来说,当原始视频帧为RGB图像时,原始视频帧的RGB通道存储有颜色通道信息,原始视频帧的alpha通道(即透明度通道)存储有透明度通道信息。

但是,原始特效视频并不是能直接显示的视频,因为视频解码渲染的流程是对一个MP4格式的视频文件先通过硬解或软解,得到视频YUV数据,在进行视频渲染前,需要将视频YUV数据转换成RGB格式数据,然后渲染RGB格式数据,从而显示一帧视频画面。而此时,由于渲染前的视频数据格式是YUV格式,YUV格式是不携带alpha信息(即透明度通道信息)的,因此渲染前的MP4视频并不能携带alpha信息,导致原始特效视频的透明度信息丢失,从而造成渲染后的特效视频并不能与背景有效的融合,呈现的效果将是背景被原始特效视频中特效内容之外的其他区域遮挡。举例来说,原始特效视频中的原始视频帧都是矩形的,而原始视频帧的特效内容如果是一个圆形的话,采用上述的渲染方式渲染后,由于透明度信息丢失,背景会被整个矩形遮挡,不是只显示一个圆形。本申请实施例的方法,由于将透明度信息提取出来,并在后续的步骤中进行有效的存储,可以保证渲染时基于透明度信息对特效视频的准确渲染,实现背景图像仅被圆形的特效内容遮挡,而其他地方正常显示的效果。

本申请实施例中,特效制作工具在制作得到原始特效视频后,还可以对原始特效视频进行分帧处理,即对原始特效视频进行视频帧提取,得到至少一张原始视频帧,并输出原始视频帧。在获取到每一原始视频帧之后,可以对原始视频帧中的每一像素点的颜色通道信息和透明度通道信息进行提取。在提取的时候,可以获取每一像素点对应的RGBA通道值,将其中的RGB通道值确定为颜色通道信息,将A通道中的alpha信息确定为透明度通道信息。

在一些实施例中,在提取每一像素点的颜色通道信息和透明度通道信息时,还可以获取每一像素点在原始视频帧中的位置信息,并将位置信息与该像素点的颜色通道信息和透明度通道信息进行映射存储。这样,在后续进行颜色图片和透明度图片生成时,可以基于每一像素点的位置信息与颜色通道信息和透明度通道信息之间的映射关系,将颜色通道信息和透明度通道信息分别赋值给颜色图片和透明度图片中的每一像素点。

步骤S702,针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片。

本申请实施例中,可以通过将每一像素点的颜色通道信息和透明度通道信息分别赋值给颜色图片和透明度图片,例如,可以分别提供两张与原始视频帧具有相同大小的画布,然后将颜色通道信息和透明度通道信息分别赋值至画布中的每一像素点,得到颜色图片和透明度图片。

这里,画布(也称空白画布)是指与原始视频帧具有相同尺寸大小且未渲染任何图像内容的空白载体,该空白载体包括多个像素点,且在该空白载体上,每一像素点均不包含任何像素信息,即每一像素点均没有渲染任何颜色通道信息和透明度通道信息。通过对空白载体上每一像素点的像素信息进行渲染,即可得到具有图像内容的任意图像。本申请实施例中,由于画布的尺寸大小与原始视频帧的尺寸大小相同,因此,可以对应于原始视频帧中的每一像素点,将颜色通道信息和透明度通道信息分别赋值给两张画布中每一画布中的每一像素点,使得画布中的每一像素点携带颜色通道信息或者透明度通道信息,从而得到具有图像内容的颜色图片和透明度图片。在一些实施例中,上述画布可以是一虚拟画布,也就是说,可以在得到每一像素点的颜色通道信息和透明度通道信息之后,将颜色通道信息和透明度通道信息分别赋值至虚拟画布中的每一像素点,得到颜色图片和透明度图片。

颜色图片是携带有颜色通道信息的图片,透明度图片是携带有透明度通道信息的图片。通过对颜色图片进行像素解析,可以得到原始视频帧中的每一像素点的颜色像素值;通过对透明度图片进行像素解析,可以得到原始视频帧中的每一像素点的透明度信息。因此,结合颜色图片和透明度图片中的信息,就可以获取到原始视频帧中的每一像素点的全部信息。

本申请实施例中,可以按照原始视频帧在原始特效视频中的先后顺序,依次针对原始特效视频中的每一原始视频帧,均生成一张颜色图片和一张透明度图片。

步骤S703,按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片。

预设配置信息是用于表征透明度图片中的每一像素点与颜色图片中的像素点之间的映射关系的信息,在进行拼接处理时,基于预设配置信息,能够确定出颜色图片和透明度图片分别在拼接图片对应的画布(即拼接画布)中的位置。

预设配置信息可以包括透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值。其中,透明度图片在拼接画布中的第一位置信息,是指在拼接处理时,透明度图片的中心位置位于拼接图片对应的拼接画布的什么位置。透明度图片的尺寸参数包括透明度图片的宽度和高度,基于透明度图片的宽度和高度,再结合透明度图片在拼接画布中的第一位置信息,则可以确定出透明度图片中的每一像素点在拼接画布中的位置,即可以确定出透明度图片中的起始像素点和结束像素点分别所在的位置。透明度图片的偏移值是指在拼接图片中,透明度图片相对于颜色图片在至少一个方向上偏移的像素点的数量,这里,至少一个方向包括但不限于:沿拼接画布长度的延伸方向、沿拼接画布宽度的延伸方向、沿拼接画布对角线的延伸方向等。

需要说明的是,拼接图片对应的拼接画布是指用于添加颜色图片和透明度图片,以形成拼接图片的空白画布。可以理解的,拼接图片对应的拼接画布是指与拼接图片具有相同大小的空白画布。也就是说,在进行拼接处理时,可以先提供一空白画布,然后将颜色图片和透明度图片依次添加至该空白画布上,或者将颜色图片和透明度图片同时添加至该空白画布上,形成拼接图片。

在一些实施例中,颜色图片和透明度图片在拼接图片中的相对位置关系可以不固定,也就是说,透明度图片可以位于颜色图片的任意相对位置上,且颜色图片和透明度图片不存在重叠区域。例如,透明度图片可以位于颜色图片的上方、下方、左方、右方、右上方、右下方、左上方、左下方等。

在一些实施例中,颜色图片和透明度图片的大小相同,但是在拼接图片中,添加到拼接图片中的颜色图片与添加到拼接图片中的透明度图片之间的大小可以相同,也可以不同。也就是说,可以对颜色图片和透明度图片中的至少一个进行特定比例的缩放处理,并将缩放处理后的颜色图片或透明度图片,添加至拼接图片中。本申请实施例中,进行缩放处理的缩放比例可以基于预设配置信息中的信息确定出,也就是说,当给定预设配置信息时,颜色图片和透明度图片缩放比例也将是确定的,可以基于给定的预设配置信息对颜色图片和透明度图片进行缩放处理。同时由于预设配置信息已知,因此后续可以直接基于预设配置信息确定出在进行拼接处理时,对颜色图片和透明度图片分别进行了多大比例的缩放处理。

在另一些实施例中,可以仅对透明度图片进行缩放处理,不对颜色图片进行缩放处理,也就是说,将颜色图片按照尺寸大小1:1的比例,添加到空白画布中;将透明度图片进行适当比例的缩小处理再添加到空白画布中。这样,可以极大的缩小透明度信息的数量,可以将颜色图片中的多个像素点与缩小处理后的透明度图片中的一个像素点对应。本申请实施例中,可以对透明度图片进行0.5倍的缩小处理。

需要说明的是,每一原始视频帧的颜色图片和透明度图片在进行拼接处理时的预设配置信息相同,也就是说,同一原始特效视频中的全部原始视频帧共用同一预设配置信息。这样,在得到的每一张拼接图片中,颜色图片和透明度图片的大小分别相同,且颜色图片和透明度图片各自所在的位置也分别相同。

步骤S704,对至少一张拼接图片进行视频转化处理,得到透明度拼接视频。

这里,视频转化处理是将得到的至少一张拼接图片按照时间先后顺序进行视频压缩处理,得到一段透明度拼接视频。

步骤S705,基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。

这里,可以基于预设配置信息从透明度拼接视频的每一视频帧(即拼接图片)中获取像素点的通道信息,即可以从拼接图片中的颜色图片中获取颜色通道信息,从拼接图片中的透明度图片中获取透明度通道信息。

为了保证特效视频渲染的准确进行,会在视频特效渲染之前进行一系列的视频格式转换等处理,而由于透明度拼接视频中的每一拼接图片既保留了颜色通道信息,还保留了透明度通道信息,因此,即使经过视频格式转换等处理,也不会丢失原始视频帧的透明度通道信息。从而使得在进行特效视频渲染时,可以考虑到原始视频帧的透明度通道信息,渲染得到的透明度特效视频在特效内容的边界出边界清晰,不会对透明度特效视频背后的背景图像在特效内容之外的其他区域的内容进行遮挡。并且,由于整个过程无需通过编写代码来实现,极大的简化了透明度特效视频的处理过程。同时,制作得到的透明度特效视频也不会占用过多的内存开销。

由此可见,本申请实施例提供的视频处理方法,针对原始特效视频中的每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,对应生成与原始视频帧对应的颜色图片和透明度图片,并将颜色图片和透明度图片进行拼接处理得到至少一张拼接图片,之后再对至少一张拼接图片进行视频转化处理,得到透明度拼接视频,从而基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。如此,由于在拼接图片中,既包含有原始视频帧的颜色通道信息,又包含有原始视频帧的透明度通道信息,这样使得生成的透明度拼接视频中也携带有原始特效视频的透明度信息,从而在进行特效视频渲染时,能够基于透明度信息渲染得到透明度特效视频,实现在透明度特效视频播放时能够高度还原原始特效视频中的特效效果,极大的降低透明度特效视频的制作成本以及制作时对内存的占用量。

在一些实施例中,视频处理系统中至少包括终端和服务器,终端上安装有特效视频制作应用,或者,终端上安装有视频播放应用,在该视频播放应用中具有特效视频制作功能模块,通过该特效视频制作功能模块能够采用本申请实施例提供的视频处理方法,生成透明度特效视频。

图8是本申请实施例提供的视频处理方法的另一个可选的流程示意图,如图8所示,方法包括以下步骤:

步骤S801,终端通过特效制作工具制作得到原始特效视频。

本申请实施例中,用户可以通过特效视频制作功能模块中的特效制作工具制作得到原始特效视频,在制作得到原始特效视频时,终端可以接收用户通过视频播放应用的特效视频制作功能模块输入的特效制作操作,在用户输入特效制作操作时,可以输入特效的类型、特效的内容、特效的尺寸、特效的延时时长、特效的颜色、特效的分布等特效参数。特效制作工具基于输入的特效参数制作得到原始特效视频。

步骤S802,终端通过特效制作工具导出原始特效视频中的每一原始视频帧,并将每一原始视频帧封装至视频处理请求中。

特效制作工具在制作完原始特效视频之后,对原始特效视频进行分帧处理或者进行视频帧识别,得到原始特效视频中的每一原始视频帧,并输出每一原始视频帧,将每一原始视频帧存储至视频播放应用的特定存储位置。

在特效制作工具得到每一原始视频帧之后,还可以将每一原始视频帧封装至视频处理请求中,视频处理请求用于请求对原始特效视频中的每一原始视频帧进行处理,得到能够渲染出特效效果的透明度特效视频。

步骤S803,终端将视频处理请求发送给服务器。

步骤S804,服务器采集每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息。

这里,服务器对每一原始视频帧中的每一像素点的像素值进行解析,以提取原始视频帧中的每一像素点的颜色通道信息和透明度通道信息。

举例来说,特效制作工具导出的原始视频帧可以是PNG格式图片,在信息提取的时候,可以获取PNG格式图片中的每一像素点对应的RGBA通道值,将RGBA通道值中的RGB通道值确定为颜色通道信息,及颜色通道信息包括R通道值、G通道值和B通道值;将A通道中的alpha信息确定为透明度通道信息。

步骤S805,服务器针对每一原始视频帧,将原始视频帧中每一像素点的颜色通道信息添加至第一画布图片的颜色通道中,得到与原始视频帧对应的颜色图片。

这里,第一画布图片是未添加任何像素点的像素值信息的空白画布,也就是说,第一画布图片中不包括任何像素点的信息。第一画布图片与原始视频帧具有相同的尺寸。

在将原始视频帧中每一像素点的颜色通道信息添加至第一画布图片的颜色通道中时,可以按照像素点在原始视频帧的位置,依次将每一像素点的颜色通道信息,添加至第一画布图片的对应位置的颜色通道中,得到包含有原始视频帧的颜色通道信息的颜色图片。其中,颜色图片的尺寸与原始视频帧的尺寸相同。

在一些实施例中,颜色通道信息可以包括RGB通道值。可以将原始视频帧中每一像素点的RGB通道值分别对应添加至第一画布图片的RGB通道中,得到与原始视频帧对应的颜色图片。

步骤S806,服务器针对每一原始视频帧,将原始视频中每一像素点的透明度通道信息添加至第二画布图片的颜色通道中,得到与原始视频帧对应的透明度图片。

这里,第二画布图片也是未添加任何像素点的像素值信息的空白画布,也就是说,第二画布图片中不包括任何像素点的信息。第二画布图片与原始视频帧也具有相同的尺寸。

在将原始视频帧中每一像素点的透明度通道信息添加至第二画布图片的颜色通道中时,可以按照像素点在原始视频帧的位置,依次将每一像素点的透明度通道信息,添加至第二画布图片的对应位置的颜色通道中,得到包含有原始视频帧的透明度通道信息的透明度图片。其中,透明度图片的尺寸也与原始视频帧的尺寸相同。

在一些实施例中,透明度通道信息可以包括透明度值。可以将原始视频帧中每一像素点的透明度值分别添加至第二画布图片的RGB通道中,得到与原始视频帧对应的颜色图片。这里,透明度值可以取值0至255,其中,0表示全部透明,255表示不透明,透明度值越高,不透明度越大。

步骤S807,服务器至少基于透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值,确定透明度图片在拼接画布中的起始位置和透明度图片的缩放比例。

这里,透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值,构成上述预设配置信息。其中,透明度图片在拼接画布中的第一位置信息,是指在拼接处理时,透明度图片的中心位置位于拼接图片对应的拼接画布的什么位置。透明度图片的尺寸参数包括透明度图片的宽度和高度,基于透明度图片的宽度和高度,再结合透明度图片在拼接画布中的第一位置信息,则可以确定出透明度图片中的每一像素点在拼接画布中的位置,即可以确定出透明度图片中的起始像素点和结束像素点分别所在的位置。透明度图片的偏移值是指在拼接图片中,透明度图片相对于颜色图片在至少一个方向上偏移的像素点的数量,这里,至少一个方向包括但不限于:沿拼接画布长度的延伸方向、沿拼接画布宽度的延伸方向、沿拼接画布对角线的延伸方向等。

在一些实施例中,可以基于透明度图片在拼接画布中的第一位置信息和透明度图片的尺寸参数,确定透明度图片在拼接画布中的起始位置。

在一种实现方式中,由于第一位置信息能够表征透明度图片的中心位置在拼接图片对应的拼接画布中的位置,透明度图片的尺寸参数包括透明度图片的宽度和高度。因此,基于透明度图片的宽度、高度、透明度图片的中心位置在拼接图片对应的拼接画布中的位置,则可以确定出透明度图片中的起始像素点(即第一个像素点)和结束像素点(即最后一个像素点)分别所在的位置。也就是说,至少可以确定出透明度图片在拼接画布中的起始位置(即起始像素点所在的位置)和结束位置,但是由于透明度图片的尺寸参数已知,通常可以不用考虑结束位置。

在另一种实现方式中,由于第一位置信息能够表征透明度图片的中心位置在拼接图片对应的拼接画布中的位置,透明度图片的尺寸参数包括透明度图片的宽度和高度。因此,基于透明度图片的宽度、高度、透明度图片的中心位置在拼接图片对应的拼接画布中的位置,则可以确定出透明度图片的边界线(即图片的边框)上的每一像素点分别所在的位置。这样,可以将边界框中的任意一条边界线上的像素点所在的位置,确定为透明度图片在拼接画布中的起始位置,从而以该边界线为起点,即可确定出透明度图片中的每一像素点在拼接画布中的位置。

在一些实施例中,还可以基于透明度图片的尺寸参数和透明度图片的偏移值,确定透明度图片的缩放比例。

这里,透明度图片的偏移值是指在拼接图片中,透明度图片相对于颜色图片在至少一个方向上偏移的像素点的数量,也就是说,基于透明度图片的偏移值,可以确定出透明度图片中与颜色图片中的任一像素点对应的透明度图片中像素点,两者之间偏移的像素点的数量。

举例来说,可以对透明度图片进行0.5倍的缩小处理,在缩小处理之前,透明度图片和颜色图片的尺寸是1:1的比例关系,因此,在颜色图片中的(0,0)位置上的像素点,就与透明度图片中的(0,0)位置上的像素点对应。但是没有与对透明度图片进行0.5倍的缩小处理,使得透明度图片中的像素点的位置发生了偏移,因此,颜色图片中的(2,2)位置上的像素点,就与透明度图片中的(1,1)位置上的像素点对应,颜色图片中的(4,4)位置上的像素点,就与透明度图片中的(2,2)位置上的像素点对应。由此可见,透明度图片相对于颜色图片在透明度图片的长度方向和宽度方向上偏移的像素点的数量均为2。

步骤S808,服务器获取颜色图片在拼接画布中的第二位置信息。

这里,第二位置信息是指在拼接处理时,颜色图片的中心位置位于拼接图片对应的拼接画布的什么位置。

步骤S809,服务器按照第二位置信息、起始位置和缩放比例,将每一原始视频帧的颜色图片和透明度图片添加至拼接画布中,形成至少一张拼接图片。

在一些实施例中,步骤S809可以通过以下方式实现:针对每一原始视频帧,可以先将颜色图片添加至拼接画布中第二位置信息对应的位置,得到具有颜色图片的拼接画布。也就是说,以颜色图片的中心位置位于拼接画布的位置为扩展的起始点,对颜色图片从中心位置进行像素点扩展,从而将颜色图片中的每一像素点添加至拼接画布中,形成具有颜色图片的拼接画布。同时,还可以按照缩放比例对透明度图片进行缩放处理,得到缩放后的透明度图片。例如,可以按照0.5缩小比例,将透明度图片缩小至一半尺寸大小。最后以起始位置为缩放后的透明度图片的起始位置,将缩放后的透明度图片添加至具有颜色图片的拼接画布中,得到一张拼接图片。也就是说,按照起始位置的位置信息,将缩放后的透明度图片的每一像素点添加至具有颜色图片的拼接画布中。

在另一些实施例中,步骤S809还可以通过以下方式实现:先将透明度图片添加至拼接画布中,也就是说,先按照缩放比例对透明度图片进行缩放处理,得到缩放后的透明度图片,并以起始位置为缩放后的透明度图片的起始位置,将缩放后的透明度图片添加至拼接画布中;然后,将颜色图片添加至具有缩放后的透明度图片的拼接画布中第二位置信息对应的位置,得到一张拼接图片。

步骤S810,服务器对至少一张拼接图片进行视频转化处理,得到透明度拼接视频。

这里,视频转化处理是指对得到的至少一张拼接图片,按照时间先后顺序进行视频压缩处理,得到一段透明度拼接视频。

步骤S811,服务器基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频。

步骤S812,服务器将透明度特效视频发送给终端。

步骤S813,终端在当前界面上显示透明度特效视频。

本申请实施例提供的视频处理方法,分别基于透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值,确定透明度图片在拼接画布中的起始位置和透明度图片的缩放比例,从而按照颜色图片在拼接画布中的第二位置信息、起始位置和缩放比例,能够将每一原始视频帧的颜色图片和透明度图片添加至拼接画布中,实现对颜色图片和透明度图片的准确拼接处理,形成至少一张拼接图片。同时,该拼接图片中也是携带有原始视频帧中的每一像素点的颜色通道信息和透明度通道信息的图片,因此,通过进一步对拼接图片进行视频转化处理和特效视频渲染,能够得到携带有透明度通道信息的透明度特效视频,实现在透明度特效视频播放时能够高度还原原始特效视频中的特效效果。

在一些实施例中,透明度拼接视频对应一视频压缩编码格式,这里的视频压缩编码格式包括但不限于MP4视频格式。本申请实施例的视频处理方法还可以包括以下步骤S11至步骤S13(图中未示出):

步骤S11,服务器获取透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值。

步骤S12,服务器按照预设数据存储格式,对透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值进行数据格式转换,得到配置信息字符串。

在一些实施例中,数据格式转换可以是将透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值,转换成JSON字符串,得到JSON字符串格式的信息,即配置信息字符串。

步骤S13,服务器将配置信息字符串,插入至视频压缩编码格式的数据头的预设位置。

本申请实施例中,可以将JSON字符串格式的信息插入至MP4视频格式的数据头的预设位置。例如,可以插入至数据头的第二个盒子位置。

在另一些实施例中,上述视频处理方法也可以由终端来实现,也就是说,由终端作为执行主体,在获取到原始特效视频之后,对原始特效视频进行视频帧提取,得到至少一个原始视频帧,并对每一原始视频帧进行信息提取,得到每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息。之后,针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片;按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;对至少一张拼接图片进行视频转化处理,得到透明度拼接视频;最终,基于预设配置信息和透明度拼接视频进行特效视频渲染,得到透明度特效视频,在得到透明度特效视频时,在当前界面显示该透明度特效视频。

并且,由终端获取透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值等预设配置信息,然后按照预设数据存储格式,对透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值进行数据格式转换,得到配置信息字符串,并将配置信息字符串,插入至视频压缩编码格式的数据头的预设位置。

由于通过上述步骤S11至步骤S13实现了将配置信息字符串,插入至视频压缩编码格式的数据头的预设位置,也就是说,预先将预设配置信息预先存储至视频压缩编码格式的数据头的预设位置,因此,可以视频压缩编码格式的数据头的预设位置直接获取预设配置信息。本申请实施例中,在按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理之前,还可以实现以下步骤:从数据头的预设位置获取所述配置信息字符串;并且,对配置信息字符串进行字符串解析,得到预设配置信息。

图9是本申请实施例提供的视频处理方法的再一个可选的流程示意图,如图9所示,方法包括以下步骤:

步骤S901,终端通过特效制作工具制作得到原始特效视频。

步骤S902,终端通过特效制作工具导出原始特效视频中的每一原始视频帧,并将每一原始视频帧封装至视频处理请求中。

步骤S903,终端将视频处理请求发送给服务器。

步骤S904,服务器采集每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息。

需要说明的是,步骤S901至步骤S904与上述步骤S801至步骤S804相同,本申请实施例不再赘述。

步骤S905,服务器针对每一原始视频帧,分别基于原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与原始视频帧对应的颜色图片和透明度图片。

本申请实施例中,可以通过将每一像素点的颜色通道信息和透明度通道信息分别赋值给颜色图片和透明度图片,例如,可以分别提供两张与原始视频帧具有相同大小的画布,然后将颜色通道信息和透明度通道信息分别赋值至画布中的每一像素点,得到颜色图片和透明度图片。颜色图片是携带有颜色通道信息的图片,透明度图片是携带有透明度通道信息的图片。

步骤S906,服务器按照预设配置信息,对每一原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片。

预设配置信息是用于表征透明度图片中的每一像素点与颜色图片中的像素点之间的映射关系的信息。在进行拼接处理时,基于预设配置信息,能够确定出颜色图片和透明度图片分别在拼接图片对应的拼接画布中的位置。

步骤S907,服务器对至少一张拼接图片进行视频转化处理,得到透明度拼接视频。

步骤S908,服务器对透明度拼接视频进行视频解码,得到透明度拼接视频中每一拼接图片的解码格式数据。

这里,可以通过硬件解码或者软件解码的方式(例如,使用视频播放器硬件解码或软件解码),得到透明度拼接视频的解码格式数据,其中,解码格式数据可以是视频帧YUV数据。

步骤S909,服务器对每一拼接图片的解码格式数据进行数据格式转换,得到每一拼接图片的颜色格式数据;其中,颜色格式数据包括颜色通道数据部分以及透明度通道数据部分。

这里,可以是将每一拼接图片对应的视频帧YUV数据,通过转换公式转换成RGB数据格式的颜色格式数据。由于拼接图片是由颜色图片和透明度图片拼接形成的,而颜色图片中携带有颜色通道信息,透明度图片中携带有透明度通道信息,因此,经过视频解码和数据格式转换后的RGB数据格式的颜色格式数据包括颜色通道数据部分以及透明度通道数据部分。其中,颜色通道数据部分对应颜色图片中携带的颜色通道信息,透明度通道数据部分对应透明度图片中携带的透明度通道信息。

步骤S910,服务器基于预设配置信息和拼接图片的颜色通道数据部分以及透明度通道数据部分进行特效视频渲染,得到透明度特效视频。

在一些实施例中,步骤S910可以通过以下方式实现:

首先,从可以MP4视频格式的数据头的预设位置获取JSON字符串格式的信息,即获取到存储在MP4视频格式的数据头的预设位置的预设配置信息。然后,基于预设配置信息,确定颜色通道数据部分中的每一颜色通道子数据与透明度通道数据部分中的每一透明度通道子数据之间的映射关系。这里,颜色通道子数据是颜色通道数据部分中对应于每一像素点的数据;透明度通道子数据是透明度通道数据部分中对应于每一像素点的数据。再然后,将具有映射关系的颜色通道子数据和透明度通道子数据,确定为同一像素点的通道数据。也就是说,将具有映射关系的表征同一像素点信息的颜色通道子数据和透明度通道子数据关联起来,共同来表征同一像素点的通道数据。并且,将每一像素点的通道数据中的颜色通道子数据在颜色图片中的位置信息,确定为像素点的位置信息。这里,由于在进行颜色图片和透明度图片的拼接处理时,是对透明度图片进行缩放处理,而不对颜色图片进行缩放处理,因此,颜色图片中的每一像素点与原始视频帧均可以一一对应,所以颜色图片中的每一像素点的位置信息与原始视频帧中的像素点的位置信息对应。如此,在得到的颜色通道子数据中,颜色通道子数据在颜色图片中的位置信息也将与原始视频帧中的像素点的位置信息对应,所以,可以将颜色通道子数据在颜色图片中的位置信息,确定为像素点的位置信息。最后,按照每一像素点的位置信息,对每一像素点的通道数据进行特效视频渲染,得到透明度特效视频。

本申请实施例中,在对每一像素点的通道数据进行特效视频渲染时,可以按照每一像素点的位置信息,将该像素点的通道数据中的颜色通道子数据作为RGB数据,将该像素点的通道数据中的透明度通道子数据作为alpha信息,实现特效视频渲染,得到透明度特效视频。

步骤S911,服务器将透明度特效视频发送给终端。

步骤S912,终端渲染当前运行应用的背景视频。

这里,背景视频可以是任意一种类型的视频,例如,短视频、电视剧、游戏视频等。当然,背景视频也可以是图片,即终端在当前界面上显示的图片。

步骤S913,终端接收特效触发操作。

步骤S914,终端响应于特效触发操作,将透明度特效视频添加至背景视频的特定位置。

这里,将透明度特效视频添加至背景视频的特定位置,可以是将透明度特效视频显示在背景视频之上。在一些实施例中,用户可以指定特定位置,终端也可以对背景视频进行视频分析,智能的确定出用于叠加透明度特效视频的特定位置。

本申请实施例的方法,至少可以应用于以下场景:

场景一:终端上安装有特效视频制作应用,特效视频制作应用用于制作并生成透明度特效视频。用于可以在特效视频制作应用的客户端输入特效视频制作请求,特效视频制作应用的服务器可以响应于特效视频制作请求,采用本申请实施例提供的视频处理方法,生成携带有透明度通道信息的透明度拼接视频,并进一步生成透明度特效视频。在生成透明度特效视频之后,可以将透明度特效视频作为特效视频制作请求的响应结果发送给终端的客户端,并在客户端上显示透明度特效视频;也可以将透明度特效视频作为特效视频制作应用制作产品输出值其他视频应用中,是的其他视频应用可以直接应用特效视频制作应用生成的透明度特效视频。

场景二:终端上安装有视频播放应用,在该视频播放应用中具有特效视频制作功能模块,通过该特效视频制作功能模块能够采用本申请实施例提供的视频处理方法,生成透明度特效视频。当用户在视频播放应用的客户端进行视频播放时,为了增加视频播放的趣味性,如果想在当前播放视频之上显示特效视频,则可以对特效视频制作功能模块进行操作,触发本申请实施例的视频处理流程,生成透明度特效视频,并在生成透明度特效视频的同时,将透明度特效视频叠加至当前播放视频之上,与当前播放视频同时显示。

场景三:终端上安装有游戏应用,在运行游戏应用的过程中,如果想要在游戏应用中添加特效,玩家可以在游戏客户端进行操作,选中特效按钮,则可以采用本申请实施例的视频处理方法生成透明度特效视频,并在游戏界面上,将透明度特效视频叠加至游戏画面中,与游戏画面同时播放。

在一些实施例中,当用户通过客户端输入特效触发操作时,还可以输入透明度特效视频的播放位置,服务器在生成透明度特效视频之后,将透明度特效视频反馈给终端,终端的客户端在该播放位置插入透明度特效视频,或者在该播放位置播放透明度特效视频。

在一些实施例中,当用户通过客户端输入特效触发操作时,还可以输入特效内容的显示数量,这样,服务器在生成透明度特效视频时,可以根据特效内容的显示数量,生成具有相应数量的特效内容的透明度特效视频,并播放该透明度特效视频。或者,在另一些实施例中,服务器可以生成包含有一个特效内容的透明度特效视频,在生成该透明度特效视频之后,对该透明度特效视频进行复制,得到与显示数量具有相同数量的透明度特效视频,并对这些数量的透明度特效视频进行同时播放。这里需要说明的是,特效内容是指透明度特效视频中的对象,举例来说,对于游戏特效,特效内容可以是所显示特效中的一双鞋子、一束花、一本书等对象。

在一些实施例中,当用户通过客户端输入针对多种类型的特效内容的特效触发操作时,服务器可以响应于用户的特效触发操作,同时生成多种类型特效内容的透明度特效视频,并将生成的多个透明度特效视频反馈给客户端,在客户端上依次播放多个透明度特效视频或者同时播放多个透明度特效视频。如果多个透明度特效视频的播放位置相同,则可以依次播放多个透明度特效视频,如果多个透明度特效视频的播放位置不同,则可以同时播放多个透明度特效视频。

下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。

在游戏特效使用场景中,编程实现特效让游戏更加炫酷好玩,但对于粒子特效、光影特效、水波特效中出现的物体分散性,使得编程实现类似特效并不是最好的手段。使用本申请实施例提供的视频处理方法,使粒子特效、光影特效、水波特效等等,能够像播放视频一样简单,不仅游戏特效开发时间大大减少,性能提升也得到保障。在视频处理效率、性能和用户体验上更优于相关技术中的方案。

本申请实施例提供的视频处理方法,至少能够实现对图10中的光影特效1001的制作和显示、对图11中的游戏礼物1101的游戏礼物特效(带alpha透明背景)1102的制作和显示、对图12中的粒子特效1201的制作和显示、对图13中的火焰特效1301的制作和显示。

游戏的渲染其实就是每一个像素点的渲染,每个像素点分成R、G、B、alpha四个通道。RGB是颜色通道,alpha是像素的透明度通道。整个游戏特效渲染,各种炫酷的动画,例如光影效果等等,都离不开alpha混合的运用。

这里对为什么特效需要使用到alpha混合来进行说明:举个很简单的例子,由于所有的图片都是矩形的,图片内容是一个圆形的话,使用这种图片的时候,其实背景会被整个矩形遮挡,不是只显示一个圆形。这个时候就需要使用alpha通道了,让圆形周围的地方都设置成透明。

这里先简单介绍下视频解码渲染流程:MP4视频文件通过硬解或软解,得到视频YUV数据,渲染前需要将YUV数据转换成RGB数据格式,然后渲染RGB数据,显示一帧视频画面。

本申请实施例就是基于视频技术,由于视频数据格式是YUV,所以MP4视频文件并不能携带alpha透明度信息,因此,本申请实施例另外开辟一块空间专门用来存储alpha透明度信息,所以就需要把图片拼接成上下两部分构成的视频,在渲染的时候,到相应位置取对应的alpha透明度值,就可以完成alpha混合的渲染。

下面介绍本申请实施例提供的视频处理方法的整体流程,图14是本申请实施例提供的视频处理方法的整体流程示意图,如图14所示,整个方案的流程分成两部分:alpha视频生产过程1401和alpha使用过程1402,其中,alpha视频生产过程是游戏特效到生成alpha视频的过程,alpha使用过程是alpha视频解码到渲染的过程。

(1)在alpha视频生产过程1401中,首先,通过AE软件导出游戏特效连续的PNG图片,如图15所示,是本申请实施例提供的由AE软件导出的游戏特效连续的PNG图片的示意图,每张PNG图片都是包括alpha透明度信息的。alpha透明度信息是存储在图片RGB A中的A通道中的信息,表示图片的透明度,0就是全部透明,255就是不透明。

然后,将每张PNG图片分离成两张图片,可以把PNG图片的RGBA四个通道信息分离成RGB和Alpha两部分,并形成两张图片,一张是RGB图片,另一张是RGB通道值都等于Alpha透明度值的图片。例如,一张PNG图片,RGBA=(255,0,0,128)分离成RGB=(255,0,0)和RGB=(128,128,128)的两张图片。如图16所示,是分离得到的两张图片,即RGB图片161和Alpha图片162。

再然后,将上述得到的两张图片(即一张是RGB图片,另一张是RGB通道值都等于Alpha透明度值的alpha图片)按上下拼接起来(当然,在其他实施例中,采用其他方式拼接也可以,还可以对图片进行缩放,如图17所示的拼接图片,就是将alpha图片缩放0.5倍后形成的图片),形成一张新的PNG图片,如图17所示,RGB图片171位于拼接图片的上半部分,缩放后的alpha图片172位于拼接图片的下半部分。与此同时,会把拼接的alpha图片所在的位置、宽高、偏移值(alpha图片在整个拼接图片中的起始位置)等信息记录下来,形成alpha配置信息(即上述预设配置信息),并将alpha配置信息以JSON字符串的形成保留。

需要说明的是,之所以要将PNG图片分离成两张图片,之后又拼接起来形成一张图片,是因为PNG图片是具有RGBA四个通道信息的图片,直接转成视频,播放器解码后得到的是YUV数据,然后YUV数据转换成RGB数据后,其实就丢失了Alpha信息。所以将PNG图片分离成两张图片,之后又拼接起来形成一张图片,就能解决这个问题,相当于开辟了一个图片区域来存放alpha信息。

最后,把基于上述得到的拼接后的多张拼接图片生成一段视频MP4,并把alpha配置信息插入到MP4视频中。考虑到读取效率,可以将alpha配置信息插入到MP4数据头的第二个盒子(box)位置,如图18所示,是本申请实施例提供的alpha配置信息的插入位置示意图,可以将alpha配置信息插入至moov盒子181中。

本申请实施例中,由于MP4格式技术栈成熟稳定不同系统端都非常好的支持,无兼容性问题。因此,可以选择MP4视频格式作为载体,当然,也可以选择其他的视频格式作为载体,即形成其他视频格式的一段视频,并将alpha配置信息插入到其他视频格式的数据头的特定位置。

此时,就已经得到了alpha视频(即上述透明度拼接视频)。如果使用普通视频播放器播放alpha视频的文件,可以正常播放,但只能看到上下拼接图形的拼接视频,无法看到特效。因此,需要在游戏应用的统一着色器(unity shader)中,使用alpha混合渲染技术,才能正常渲染出游戏特效。

(2)在alpha使用过程过程1402中,首先,对alpha视频进行硬解或软解(使用视频播放器硬解或软件),得到视频帧YUV数据;然后,从alpha视频文件中的第二个盒子中读取出alpha配置信息的JSON字符串。再然后,把视频帧YUV数据通过转换公式转换成RG B数据格式,其中,YUV数据格式与RGB数据格式之间的转换公式如下公式(1)至(6):

RGB数据格式转YUV数据格式如以下公式(1)至(3):

Y=0.257R+0.504G+0.098B+16 (1)

Cr=V=0.439R-0.368G-0.071B+16 (2)

Cb=U=-0.148R-0.291G+0.439B+128 (3)

YUV数据格式转RGB数据格式如以下公式(4)至(6):

B=1.164(Y-16)+2.018(U-128) (4)

G=1.164(Y-16)-0.813(V-128)-0.391(U-128) (5)

R=1.164(Y-16)+1.596(V-128) (6)

之后,渲染每个像素点,需要RGB数据和Alpha数据,RGB数据来自视频帧的上半部分,Alpha数据来自视频帧的下半部分,但是需要精确对应这两个数据之间位置。在对应着两个数据之间位置的时候,就需要用上从MP4视频中读取到的Alpha配置信息,里面包括了视频的宽高、边距、下半部分起始偏移位置等等信息。这样视频就被渲染成RGBA四通道的视频帧(即透明度特效视频的视频帧)显示在屏幕上,如图19所示的渲染过程,基于拼接图片191中的RGB图片1911中的数据和Alpha图片1912中的数据,渲染得到透明度特效视频的视频帧192,那么这样的视频帧192也就具备了透明度信息。

本申请实施例提供的视频处理方法,能够更加高效地开发游戏特效程序,且支持粒子特效,支持透明背景显示等。同时,生成的透明度特效视频文件小,采用硬件解码即可实现。

需要说明的是,在拼接上图片中,下半部分的alpha数据可以进行进一步压缩,因此,可以出现各种形状的拼接方式。

本申请实施例的视频处理方法,使用MP4视频作为载体,充分利用了MP4成熟技术栈,把alpha混合技术作为游戏特效渲染的方案,是MP4与alpha渲染技术的结合体。alpha渲染技术是使用统一着色器实现,充分自主研发和测试。alpha数据压缩形式,能够实现从上下拼接模式优化到alpha数据只占整个拼接图片的数据的1/3。

可以理解的是,在本申请实施例中,涉及到用户信息的内容,例如,原始特效视频、颜色图片、透明度图片、透明度拼接视频和透明度特效视频等信息,如果涉及与用户信息或企业信息相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

下面继续说明本申请实施例提供的视频处理装置354实施为软件模块的示例性结构,在一些实施例中,如图6所示,视频处理装置354包括:

获取模块,用于获取原始特效视频的每一原始视频帧中的每一像素点的颜色通道信息和透明度通道信息;图片生成模块,用于针对每一所述原始视频帧,分别基于所述原始视频帧中每一像素点的颜色通道信息和透明度通道信息,生成与所述原始视频帧对应的颜色图片和透明度图片;拼接处理模块,用于按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理,得到至少一张拼接图片;视频转化模块,用于对所述至少一张拼接图片进行视频转化处理,得到透明度拼接视频;渲染模块,用于基于所述预设配置信息和所述透明度拼接视频进行特效视频渲染,得到透明度特效视频。

在一些实施例中,所述图片生成模块还用于:将所述原始视频帧中每一像素点的颜色通道信息添加至第一画布图片的颜色通道中,得到与所述原始视频帧对应的颜色图片;将所述原始视频中每一像素点的透明度通道信息添加至第二画布图片的颜色通道中,得到与所述原始视频帧对应的透明度图片。

在一些实施例中,所述颜色通道信息包括RGB通道值,所述透明度通道信息包括透明度值;所述图片生成模块还用于:将所述原始视频帧中每一像素点的RGB通道值分别对应添加至所述第一画布图片的RGB通道中,得到与所述原始视频帧对应的颜色图片;以及,将所述原始视频帧中每一像素点的透明度值分别添加至所述第二画布图片的RGB通道中,得到与所述原始视频帧对应的颜色图片。

在一些实施例中,所述预设配置信息包括以下至少之一:透明度图片在拼接画布中的第一位置信息、透明度图片的尺寸参数和透明度图片的偏移值;所述拼接处理模块还用于:至少基于所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值,确定所述透明度图片在拼接画布中的起始位置和所述透明度图片的缩放比例;获取所述颜色图片在所述拼接画布中的第二位置信息;按照所述第二位置信息、所述起始位置和所述缩放比例,将每一所述原始视频帧的颜色图片和透明度图片添加至所述拼接画布中,形成所述至少一张拼接图片。

在一些实施例中,所述拼接处理模块还用于:基于所述透明度图片在拼接画布中的第一位置信息和所述透明度图片的尺寸参数,确定所述透明度图片在所述拼接画布中的起始位置;基于所述透明度图片的尺寸参数和所述透明度图片的偏移值,确定所述透明度图片的缩放比例。

在一些实施例中,所述拼接处理模块还用于:针对每一所述原始视频帧,将所述颜色图片添加至所述拼接画布中第二位置信息对应的位置,得到具有颜色图片的拼接画布;按照所述缩放比例对所述透明度图片进行缩放处理,得到缩放后的透明度图片;以所述起始位置为所述缩放后的透明度图片的起始位置,将所述缩放后的透明度图片添加至所述具有颜色图片的拼接画布中,得到一张拼接图片。

在一些实施例中,所述透明度拼接视频对应一视频压缩编码格式;所述装置还包括:信息获取模块,用于获取所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值;格式转换模块,用于按照预设数据存储格式,对所述透明度图片在拼接画布中的第一位置信息、所述透明度图片的尺寸参数和所述透明度图片的偏移值进行数据格式转换,得到配置信息字符串;插入模块,用于将所述配置信息字符串,插入至所述视频压缩编码格式的数据头的预设位置。

在一些实施例中,所述装置还包括:字符串获取模块,用于在按照预设配置信息,对每一所述原始视频帧的颜色图片和透明度图片进行拼接处理之前,从所述数据头的预设位置获取所述配置信息字符串;字符串解析模块,用于对所述配置信息字符串进行字符串解析,得到所述预设配置信息。

在一些实施例中,所述渲染模块还用于:对所述透明度拼接视频进行视频解码,得到所述透明度拼接视频中每一拼接图片的解码格式数据;对每一拼接图片的解码格式数据进行数据格式转换,得到每一拼接图片的颜色格式数据;其中,所述颜色格式数据包括颜色通道数据部分以及透明度通道数据部分;基于所述预设配置信息和所述拼接图片的颜色通道数据部分以及透明度通道数据部分进行特效视频渲染,得到所述透明度特效视频。

在一些实施例中,所述渲染模块还用于:基于所述预设配置信息,确定所述颜色通道数据部分中的每一颜色通道子数据与透明度通道数据部分中的每一透明度通道子数据之间的映射关系;将具有所述映射关系的颜色通道子数据和透明度通道子数据,确定为同一像素点的通道数据;将每一所述像素点的通道数据中的颜色通道子数据在所述颜色图片中的位置信息,确定为所述像素点的位置信息;按照每一像素点的位置信息,对每一像素点的通道数据进行特效视频渲染,得到所述透明度特效视频。

在一些实施例中,所述装置还包括:背景视频渲染模块,用于渲染当前运行应用的背景视频;视频添加模块,用于响应于特效触发操作,将所述透明度特效视频添加至所述背景视频的特定位置。

需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。

本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括可执行指令,该可执行指令是一种计算机指令;该可执行指令存储在计算机可读存储介质中。当视频处理设备的处理器从计算机可读存储介质读取该可执行指令,处理器执行该可执行指令时,使得该视频处理设备执行本申请实施例上述的方法。

本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图7示出的方法。

在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(FRAM,Ferromagnetic Random Access Memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read Only Memory)、带电可擦可编程只读存储器(EEPR OM,Electrically Erasable Programmable Read Only Memory)、闪存、磁表面存储器、光盘、或光盘只读存储器(CD-ROM,Compact Disk-Read Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMar kup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。

以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

相关技术
  • 基于视频处理方法及装置、视频设备及存储介质
  • 视频处理方法、装置、计算机设备和存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 视频存储系统、视频处理方法、装置、设备及存储介质
  • 视频存储系统、视频处理方法、装置、设备及存储介质
技术分类

06120116503258