一种多路视频合成方法、引擎、装置及可读存储介质制造方法及图纸

技术编号:30025364 阅读:24 留言:0更新日期:2021-09-11 06:55
本发明专利技术提出一种多路视频合成方法、引擎、装置及可读存储介质,该方法中,用户通过在合成引擎中预先创建场景合成任务,实现对合成画面中来自不同视频源的视频帧的自定义布局。通过构建自定义的转场触发条件和转场画面合成方式,实现转场效果的灵活设置。本发明专利技术中,功能模块架构简单,通过普通的硬件即可实现,无需专用的昂贵设备,成本较低。成本较低。成本较低。

【技术实现步骤摘要】
一种多路视频合成方法、引擎、装置及可读存储介质


[0001]本专利技术涉及视频合成
,具体涉及一种多路视频合成方法、引擎、装置及可读存储介质。

技术介绍

[0002]在直播与视频会议领域,通常需要将多路视频画面按照指定的位置、大小以及上下顺序叠放在一起,合成为一路视频画面。合成的视频画面上一般还会叠加台标、字幕等其它素材。当用户需要改变当前合成画面布局或内容时,为了视觉效果,通常会在切换过程中使用转场动画,比如:淡入淡出、百叶窗擦除、旋转飞入等,但转场效果单一且固定。
[0003]现有多路视频实时合成的方法与系统通常是基于专用硬件设备,价格昂贵且功能有限,无法灵活地支持自定义画面布局和转场效果。

技术实现思路

[0004]专利技术目的:本专利技术旨在提供一种多路视频实时合成的技术方案,可以支持任意添加视频源,灵活自定义画面布局和转场效果。
[0005]技术方案:为实现上述目的,本专利技术提出以下技术方案:一种多路视频合成方法,所述方法包括以下步骤:(1)获取视频源,将每个视频源预处理为合成引擎规定格式的视频帧;(2)所述合成引擎基于预先创建的场景合成任务所规定的布局方式,调取来自不同视频源的视频帧,并将调取的视频帧布局在同一个画面中,得到合成画面并输出;(3)所述合成引擎在顺序所述场景合成任务的过程中,若接收到转场指令,则根据所述转场指令,将转场前后的两个合成画面的像素值分别存储为第一缓冲帧和第二缓冲帧,然后按照预先构建的处理逻辑,将第一、第二缓冲帧和转场进度值映射为转场画面的像素值,进而得到转场画面,最后,所述合成引擎依次输出当前合成画面、转场画面和转场后的合成画面。
[0006]针对所述多路视频合成方法,以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
[0007]可选的,所述步骤(1)中,预处理的具体步骤包括:将所述视频源恢复成原始未压缩的视频帧,再将所述视频帧的像素格式统一转换为所述合成引擎规定的图像格式。
[0008]可选的,在所述合成引擎输出所述合成画面之前,还对所述合成面进行分辨率变换以及帧率变换。
[0009]可选的,所述步骤(3)中,转场进度值的计算公式为:
其中,表示转场进度值,表示用户指定的转场效果持续时长,表示转场开启的时间点,表示当前时间点,表示求A和B之中的最大值。
[0010]可选的,所述步骤(3)中,计算转场画面的像素值的公式为:其中,表示像素点坐标,表示转场画面在坐标处的像素值,为映射函数,表示当前合成画面在坐标处的像素值,表示转场后的合成画面在坐标处的像素值。
[0011]本专利技术还提出一种多路视频实时合成引擎,所述合成引擎包括:渲染管线、色彩空间转换器、材质采样器、材质对象、帧缓冲对象;其中,所述色彩空间转换器用于将自不同视频源的视频帧转换为所述合成引擎所支持的统一格式,并将转换后的视频帧写入所述视频源相应的材质对象;所述色彩空间转换器还用于将所述渲染管线输出的合成画面进行缩放和转换;所述材质采样器用于根据用户指令从相应的材质对象中选取视频帧并送入渲染管线;所述渲染管线包括高精度时钟源、顶点着色器、布局着色器和转场着色器;所述高精度时钟源用于提供时钟信号;所述渲染管线在所述时钟信号的驱动下调用所述顶点着色器、画面布局着色器和转场效果着色器,完成所述场景合成任务;所述帧缓冲对象用于存储所述第一缓冲帧和第二缓冲帧。
[0012]针对所述多路视频实时合成引擎,以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
[0013]可选的,所述合成引擎还包括输出sink模块,用于对合成图像进行分辨率变换以及帧率变换。
[0014]本专利技术还提出一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被所述合成引擎执行时,实现所述的视频合成方法。
[0015]本专利技术还提出一种多路视频合成装置,包括解码模块、采集模块、合成引擎、控制模块、编码模块;其中,所述解码模块用于将网络上接收到的压缩视频包解码还原为未压缩的原始视频帧;所述采集模块用于采集本地视频信号,然后经过模数转换,将所述视频信号转换为计算机可处理的视频帧;所述控制模块用于接收用户指令,并依据所述用户指令控制其他模块执行相应操作;所述合成引擎用于在控制模块的控制下进行画面合成;所述编码模块用于对所述合成引擎输出的合成画面进行压缩编码后传输。
[0016]针对所述多路视频合成装置,以下还提供了若干可选方式,但并不作为对上述总
体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
[0017]可选的,所述多路视频合成装置还包括显示模块,所述显示模块用于显示所述合成画面。
[0018]有益效果:与现有技术相比,本专利技术具有以下优势:1、相对于现有视频合成技术只能按照固定格式显示合成后的视频画面,本专利技术能够通过预先创建场景合成任务的方式去自定义合成画面的布局方式。
[0019]2、本专利技术可以根据需求自定义转场效果。
[0020]3、本专利技术中,功能模块架构简单,通过普通的硬件即可实现,无需专用的昂贵设备,成本较低。
附图说明
[0021]图1为实施例1涉及的多路视频合成方法的流程图;图2为实施例2涉及的多路视频合成引擎的内部结构图;图3为实施例4涉及的多路视频合成装置的功能模块架构示意图;图4为实施例2涉及的合成引擎工作流程图。
具体实施方式
[0022]下面将结合附图和具体实施例对本专利技术作更进一步的说明。但应当理解的是,本专利技术可以以各种形式实施,以下在附图中出示并且在下文中描述的一些示例性和非限制性实施例,并不意图将本专利技术限制于所说明的具体实施例。
[0023]应当理解的是,在技术下可行的情况下,以下针对不同实施例所列举的技术特征可以相互组合,从而形成本专利技术范围内的另外的实施例。此外,本专利技术所述的特定示例和实施例是非限制性的,并且可以对以上所阐述的结构、步骤、顺序做出相应修改而不脱离本专利技术的保护范围。
[0024]实施例1:如图1所示,本实施例示例性地给出一种多路视频合成方法的流程图,可以支持任意添加视频源,灵活自定义画面布局和转场效果,该方法包括以下步骤:步骤1:获取视频源Source,将每个视频源Source预处理为合成引擎规定格式的视频帧。
[0025]这里的视频源Source可以是来自网络的压缩码流(比如RTSP、RTMP、MPEG

TS等),也可以是本地采集的视频信号(比如SDI、HDMI)。对于网络压缩码流,则创建对应的视频解码器;视频解码器对压缩数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多路视频合成方法,其特征在于,包括以下步骤:(1)获取视频源,将每个视频源预处理为合成引擎规定格式的视频帧;(2)所述合成引擎基于预先创建的场景合成任务所规定的布局方式,调取来自不同视频源的视频帧,并将调取的视频帧布局在同一个画面中,得到合成画面并输出;(3)所述合成引擎在顺序所述场景合成任务的过程中,若接收到转场指令,则根据所述转场指令,将转场前后的两个合成画面的像素值分别存储为第一缓冲帧和第二缓冲帧,然后按照预先构建的处理逻辑,将第一、第二缓冲帧和转场进度值映射为转场画面的像素值,进而得到转场画面,最后,所述合成引擎依次输出当前合成画面、转场画面和转场后的合成画面。2.根据权利要求1所述的多路视频实时合成方法,其特征在于,所述步骤(1)中,预处理的具体步骤包括:将所述视频源恢复成原始未压缩的视频帧,再将所述视频帧的像素格式统一转换为所述合成引擎规定的图像格式。3.根据权利要求1所述的多路视频实时合成方法,其特征在于,在所述合成引擎输出所述合成画面之前,还对所述合成面进行分辨率变换以及帧率变换。4.根据权利要求1所述的多路视频实时合成方法,其特征在于,所述步骤(3)中,转场进度值的计算公式为:其中,表示转场进度值,表示用户指定的转场效果持续时长,表示转场开启的时间点,表示当前时间点,表示求A和B之中的最大值。5.根据权利要求4所述的多路视频实时合成方法,其特征在于,所述步骤(3)中,计算转场画面的像素值的公式为:其中,表示像素点坐标,表示转场画面在坐标处的像素值,为映射函数,表示当前合成画面在坐标处的像素值,表示转场后的合成画面在坐标处的像素值。6.一种多路视频实时合成引擎,其特征在于,包括:渲染管线、色彩空...

【专利技术属性】
技术研发人员:鲁彬彬
申请(专利权)人:江苏三步科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1