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

虚拟直播视频的生成方法、装置、设备及可读存储介质

文献发布时间:2024-04-18 20:00:25


虚拟直播视频的生成方法、装置、设备及可读存储介质

技术领域

本申请实施例涉及计算机技术领域,特别涉及一种虚拟直播视频的生成方法、装置、设备及可读存储介质。

背景技术

随着计算机技术的发展,虚拟直播也随之发展。虚拟直播是利用计算机生成的直播视频,通常使用计算机动画或三维模型来表示,广泛应用于网络直播、视频游戏、广告等领域。

发明内容

本申请实施例提供了一种虚拟直播视频的生成方法、装置、设备及可读存储介质,可用于解决相关技术中的问题。所述技术方案如下:

一方面,本申请实施例提供了一种虚拟直播视频的生成方法,所述方法包括:获取第一渲染机发送的第一实时渲染画面;基于所述第一实时渲染画面,生成用于调整所述第一渲染机的渲染参数的控制指令;向所述第一渲染机发送所述控制指令;获取所述第一渲染机发送的第二实时渲染画面,所述第二实时渲染画面利用调整后的渲染参数进行实时渲染得到,所述调整后的渲染参数基于所述控制指令对所述第一渲染机的渲染参数进行调整得到;基于所述第二实时渲染画面,生成虚拟直播视频。

另一方面,本申请实施例提供了一种虚拟直播视频的生成装置,所述装置包括:第一获取模块,用于获取第一渲染机发送的第一实时渲染画面;第一生成模块,用于基于所述第一实时渲染画面,生成用于调整所述第一渲染机的渲染参数的控制指令;发送模块,用于向所述第一渲染机发送所述控制指令;第二获取模块,用于获取所述第一渲染机发送的第二实时渲染画面,所述第二实时渲染画面利用调整后的渲染参数进行实时渲染得到,所述调整后的渲染参数基于所述控制指令对所述第一渲染机的渲染参数进行调整得到;第二生成模块,用于基于所述第二实时渲染画面,生成虚拟直播视频。

在一种可能的实现方式中,第一生成模块用于获取配置的控制信息,所述控制信息与所述第一渲染机的渲染参数关联;对所述第一实时渲染画面进行监测,得到实时监测结果;基于所述实时监测结果和所述控制信息生成所述控制指令,所述控制指令用于调整关联的所述第一渲染机的渲染参数。

在一种可能的实现方式中,第一生成模块用于基于配置的所述控制信息设置控制界面的交互控制单元和所述交互控制单元的交互控制对象,所述交互控制单元用于确定所述控制信息的类别,所述交互控制对象用于将所述控制信息转化为渲染机的渲染参数调整信息;将所述交互控制对象与所述第一渲染机的渲染参数关联。

在一种可能的实现方式中,所述交互控制单元包括:画面监看交互控制单元、虚拟摄影机交互控制单元以及触发转换交互控制单元,所述画面监看交互控制单元用于显示不同场景下的实时渲染画面,所述虚拟摄影机交互控制单元用于调整虚拟摄影机的相关参数,所述触发转换交互控制单元用于对所述第一实时渲染画面进行功能实时调整。

在一种可能的实现方式中,所述虚拟摄影机交互控制单元的所述交互控制对象包括虚拟摄影机的外部参数和虚拟摄影机自身参数,所述虚拟摄影机的外部参数包括位置、旋转角度、移动速度以及移动距离中的至少一种,所述虚拟摄影机自身参数包括焦距、焦点以及曝光程度中的至少一种。

在一种可能的实现方式中,所述触发转换交互控制单元的所述交互控制对象包括动画序列、视觉特效、音乐、场景转换中的至少一种。

在一种可能的实现方式中,虚拟直播视频的生成装置还包括通信连接模块,所述通信连接模块用于接收到所述第一渲染机的连接请求,根据所述连接请求获取所述第一渲染机的互联网协议地址;确定接收到所述连接请求的所述第一渲染机的数量,确定用于备份的多个第二渲染机,获取所述第二渲染机的互联网协议地址,所述第二渲染机的数量与所述第一渲染机的数量相同,所述第二渲染机与所述第一渲染机一一对应,且所述第二渲染机与所述第一渲染机接收相同的所述控制指令;基于所述第一渲染机和所述第二渲染机的互联网协议地址,分别与所述第一渲染机和所述第二渲染机进行通信连接。

在一种可能的实现方式中,所述通信连接模块用于:确定用于控制所述第一渲染机和所述第二渲染机的控制设备的数量;响应于所述控制设备的数量为多个,在多个控制设备中确定目标控制设备,配置所述目标控制设备的控制权限;将所述目标控制设备分别与所述第一渲染机和所述第二渲染机进行通信连接,以使基于所述目标控制设备的控制权限来对所述第一渲染机和所述第二渲染机进行控制。

另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以使计算机设备实现上述任一所述的虚拟直播视频的生成方法。

另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以使计算机实现上述任一所述的虚拟直播视频的生成方法。

另一方面,还提供了一种计算机程序或计算机程序产品,所述计算机程序或计算机程序产品中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行,以使计算机实现上述任一种虚拟直播视频的生成方法。

本申请实施例提供的技术方案至少带来如下有益效果:

根据本申请示例性的实施方式,在获取渲染机的第一实时渲染画面之后,利用控制指令对渲染机的渲染参数进行调整,渲染机利用调整后的渲染参数进行实时渲染,得到第二实时渲染画面,并基于第二实时渲染画面生成虚拟直播视频。基于控制指令实时对渲染机的渲染参数进行调整,基于调整后的渲染参数得到实时渲染画面,进而得到更优质的虚拟直播视频。并且通过控制指令对渲染机进行控制,交互操作直观快捷。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种虚拟直播视频的生成方法的实施环境示意图;

图2是本申请实施例提供的一种虚拟直播视频的生成方法的流程图;

图3是本申请实施例提供的一种控制中心与渲染机建立连接过程的流程图;

图4是本申请实施例提供的一种控制中心与渲染机的连接状态界面示意图;

图5是本申请实施例提供的一种目标控制设备与渲染机通信连接的流程图;

图6是本申请实施例提供的一种生成控制指令的流程图;

图7是本申请实施例提供的一种控制界面示意图;

图8是本申请实施例提供的一种虚拟直播视频的生成装置的结构示意图;

图9是本申请实施例提供的一种终端设备的结构示意图;

图10是本申请实施例提供的一种服务器的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图1是本申请实施例提供的一种虚拟直播视频的生成方法的实施环境示意图,如图1所示,该实施环境包括:计算机设备101,计算机设备101用于执行本申请实施例提供的虚拟直播视频的生成方法。

可选地,计算机设备101可以为终端设备,终端设备可以是任何一种可与用户通过键盘、触摸板、遥控器、语音交互或者手写设备等一种或多种方式进行人机交互的电子设备产品。例如,PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal DigitalAssistant,个人数字助手)、可穿戴设备、PPC(Pocket PC,掌上电脑)、平板电脑等。

终端设备可以泛指多个终端设备中的一个,本实施例仅以终端设备来举例说明。本领域技术人员可以知晓,上述终端设备的数量可以更多或更少。比如上述终端设备可以仅为一个,或者上述终端设备为几十个或几百个,或者更多数量,本申请实施例对终端设备的数量和设备类型不加以限定。

计算机设备101可以为服务器,服务器为一台服务器,或者为多台服务器组成的服务器集群,或者为云计算平台和虚拟化中心中的任意一种,本申请实施例对此不加以限定。服务器与终端设备通过有线网络或无线网络进行通信连接。服务器具有数据接收功能、数据处理功能和数据发送功能。当然,服务器还可以具有其他功能,本申请实施例对此不加以限定。

本领域技术人员应能理解上述终端设备和服务器仅为举例说明,其他现有的或者今后可能出现的终端设备或服务器,如可适用于本申请,也应包含在本申请的保护范围之内,并在此以引用方式包含于此。

本申请实施例提供了一种虚拟直播视频的生成方法,该方法可应用于上述图1所示的实施环境,以图2所示的本申请实施例提供的一种虚拟直播视频的生成方法的流程图为例,该方法可由图1中的计算机设备101执行。其中,虚拟直播视频为基于渲染的虚拟场景和/或虚拟人物的画面生成的视频,虚拟直播视频可以包括渲染的虚拟场景画面与现实结合的视频以及基于渲染的虚拟人物(数字人)画面生成的直播视频。如图2所示,该方法包括下述步骤110至步骤150。

在步骤110中,获取第一渲染机发送的第一实时渲染画面。

在本申请示例性的实施例中,在执行步骤110之前,控制中心与渲染机需要建立通信连接。图3是本申请实施例提供的一种控制中心与渲染机建立连接过程的流程图。如图3所示,控制中心与渲染机建立连接过程可以包括步骤10至步骤30。

在步骤10中,接收到第一渲染机的连接请求,根据连接请求获取第一渲染机的互联网协议地址。

在本申请示例性的实施例中,控制中心可以包含至少一种类型的控制设备,控制设备具有接入互联网的功能,例如,控制设备可以包括计算机、手机、平板电脑中的至少一种;第一渲染机可以包括一个渲染机,也可以包括多个渲染机。首先配置控制设备以及第一渲染机的互联网协议地址(也称作IP地址),控制设备与第一渲染机处于相同的局域网下,以保证控制设备与第一渲染机之间的网络通信。控制中心可以对第一渲染机特定网络端口进行监测,当监测到第一渲染机特定网络端口向控制中心发送连接请求,控制中心接收到第一渲染机的连接请求后,获取第一渲染机的互联网协议地址。

图4是本申请实施例提供的一种控制中心与渲染机的连接状态界面示意图。如图4所示,本申请以控制中心接收到4个第一渲染机的连接请求为例进行说明,控制中心在接收到第一渲染机的连接请求后,获取全部第一渲染机的IP地址,例如,第一渲染机的IP地址可以为192.168.××.××,每个第一渲染机的地址都是唯一的,为了后续过程中更好的对第一渲染机进行控制,还可以设置第一渲染机的名称。例如,分别设置4个第一渲染机的名称为A、B、C和D。

在步骤20中,确定接收到连接请求的第一渲染机的数量,确定用于备份的多个第二渲染机,获取第二渲染机的互联网协议地址,第二渲染机的数量与第一渲染机的数量相同,第二渲染机与第一渲染机一一对应,且第二渲染机与第一渲染机接收相同的控制指令。

在本申请示例性的实施例中,控制中心接收到第一渲染机的连接请求后,可以确定发送连接请求的第一渲染机的数量,并设置同等数量的用于为第一渲染机进行数据备份的第二渲染机。结合图4中渲染机备份设置,为第一渲染机A、B、C、D分别设置对应的第二渲染机A1、B1、C1、D1,其中,第二渲染机的IP地址、第一渲染机的IP地址以及控制设备的IP地址处于同一局域网下,第二渲染机的数量与第一渲染机的数量相同,第二渲染机与第一渲染机一一对应,并且第一渲染机与其对应的第二渲染机接收的控制指令相同。例如,第二渲染机A1对应于第一渲染机A,第二渲染机A1对应于第一渲染机A接收相同的控制指令,依此类推。需要说明的是,第一渲染机A和第二渲染机A1可以互为备份渲染机,即A1为第一渲染机,A为第一渲染机A1的备份渲染机。

在步骤30中,基于第一渲染机和第二渲染机的互联网协议地址,分别与第一渲染机和第二渲染机进行通信连接。

示例性地,控制中心的控制设备可以通过有线网络或者无线网络与渲染机通信连接,控制设备对通信连接的第一渲染机和第二渲染机具有控制权限,控制设备与第一渲染机和第二渲染机之间可以进行数据传输和/或指令传输。在后续控制设备与第一渲染机和第二渲染机通信的过程中,第一渲染机和第二渲染机接收相同的控制指令,执行相同的操作,即控制设备同时控制第一渲染机和第二渲染机,在后续说明书中第一渲染机和第二渲染机也可以统称为渲染机,不再进行特殊说明。本申请通过对第一渲染机进行备份设置,当第一渲染机出现问题时,其备份渲染机(即第二渲染机)可以快速接替第一渲染机的工作,在一定程度上可以避免由于第一渲染机的问题导致的直播事故。

在本申请示例性的实施例中,控制中心可以包含多个控制设备,多个控制设备的类型可以相同,也可以不同。图5是本申请实施例提供的一种目标控制设备与渲染机通信连接的流程图。如图5所示,目标控制设备与渲染机通信连接可以包括步骤31至步骤33。

在步骤31中,确定用于控制第一渲染机和第二渲染机的控制设备的数量。

示例性地,当控制中心包含的控制设备的数量为1个时,将当前控制设备与发送连接请求的第一渲染机以及其对应的第二渲染机进行通信连接,当前控制设备可以控制第一渲染机及第二渲染机的所有渲染参数。

在步骤32中,响应于控制设备的数量为多个,在多个控制设备中确定目标控制设备,配置目标控制设备的控制权限。

示例性地,当控制中心包含多个控制设备时,需要在多个控制设备确定目标控制设备。结合图4,控制设备可以包含控制设备01、控制设备02、控制设备03、控制设备04等。可以通过各个控制设备的连接状态确定目标控制设备,例如,控制设备01、控制设备02的连接状态为开启状态,即连接状态为ON,控制设备03、控制设备04的连接状态为关闭状态,即连接状态为OFF,可以确定目标控制设备为01和控制设备02。

在确定了目标控制设备之后,还可以进一步的确定目标控制设备的控制权限。示例性地,控制设备01和控制设备02的控制权限可以相同,也可以不同。例如,控制设备01可以控制第一渲染机以及第二渲染机的所有渲染参数,控制设备02可以控制第一渲染机以及第二渲染机的部分渲染参数;控制设备01可以控制第一渲染机以及第二渲染机的一部分渲染参数,控制设备02可以控制第一渲染机以及第二渲染机的剩余部分渲染参数。通过在控制设备中确定目标控制设备以及配置目标控制设备的控制权限,可以在一定程度上避免生成的控制指令冲突,使渲染机的执行错误的功能操作。

需要说明的是,本申请的实施例中控制中心包含的控制设备的种类和数量为示例性说明,本申请不限于此。在控制设备中确定目标控制设备也可以根据实际情况指定控制设备为目标控制设备,对于确定目标控制设备的方式本申请不做限制。

在步骤33中,将目标控制设备分别与第一渲染机和第二渲染机进行通信连接,以使基于目标控制设备的控制权限来对第一渲染机和第二渲染机进行控制。

示例性地,在确定了目标控制设备以及目标控制设备的权限之后,还可以基于目标控制设备以及目标控制设备的权限与第一渲染机和第二渲染机进行通信连接。结合图4,渲染机A、B、D及其备份渲染机A1、B1、D1(图中未示出)可以与控制设备01通信连接,渲染机C及其备份渲染机C1(图中未示出)可以与控制设备02通信连接。目标控制设备在后续过程中可以通过控制指令对与其连接的第一渲染机和第二渲染机进行控制。

在本申请示例性的实施例中,第一渲染机和第二渲染机可以配置有三维虚拟引擎,三维虚拟引擎可以基于3D渲染技术得到虚拟场景和/或虚拟人物的画面,虚拟场景和/或虚拟人物的画面是可以通过计算机程序进行操控的数字化对象。其中,虚拟人物可以是通过采集真人的数据生成的,也可以是直接由计算机程序进行创建的,通过在三维虚拟引擎中配置虚拟人物以及配置虚拟人物的动作数据,可以生成实时渲染画面。

在控制中心与渲染机通信连接之后,控制中心可以与渲染机之间进行实时通信。

在本申请一个实施例中,第一渲染机和第二渲染机基于相同的预设程序执行相同的渲染操作,同步生成第一渲染画面,第一渲染机和第二渲染机除IP地址不同外,进行的操作都相同。为了减少控制中心与渲染机之间数据传输的压力,控制中心在获取实时渲染画面时,可以从第一渲染机或者第二渲染机中的其中任一个渲染机中获取。以获取第一渲染机的第一渲染画面为例,第一渲染机的实时渲染画面可以通过串行数字接口(SerialDigital Interface,SDI)或者高清多媒体接口(High Definition MultimediaInterface,HDMI)等有线传输方式实时发送至控制中心,也可以基于网络设备接口协议(Network Device Interface,NDI)或者ST.2110协议,采用无线传输的方式实时发送至控制中心。

在步骤120中,基于第一实时渲染画面,生成用于调整第一渲染机的渲染参数的控制指令。

在本申请示例性的实施例中,控制中心基于第一实时渲染画面生成控制指令。其中,控制指令用于调整渲染机的渲染参数,实时更新实时渲染画面,渲染参数可以包括虚拟摄影机的相关参数、功能调整参数以及画面监看参数。

示例性地,控制指令可以包括多视窗全机位预览、机位切换、机位控制、灯光控制、特效触发、音乐播放、动画播放中的至少一种。图6是本申请实施例提供的一种生成控制指令的流程图。如图6所示,生成控制指令可以包括步骤121至步骤123。

在步骤121中,获取配置的控制信息,控制信息与第一渲染机的渲染参数关联。

示例性地,本申请可以基于配置的控制信息生成控制界面,控制界面包括多个交互控制单元,交互控制单元包括多个交互控制对象,将交互控制对象与第一渲染机的渲染参数关联。控制中心通过交互控制对象控制关联的渲染机的渲染参数,进一步控制渲染机执行对应的操作。

以图7是本申请实施例提供的一种控制界面示意图为例,如图7所示,控制界面是控制信息的体现,基于控制信息可以设置控制界面,例如,可以基于不同类别的控制信息将控制界面划分为三个部分,分别为画面监看交互控制单元、虚拟摄影机交互控制单元以及触发转换交互控制单元,画面监看交互控制单元用于显示不同场景下的实时渲染画面,虚拟摄影机交互控制单元用于调整虚拟摄影机的相关参数,触发转换交互控制单元用于对第一实时渲染画面进行功能实时调整。

示例性地,虚拟摄影机交互控制单元可以将渲染机中所有的虚拟摄影机的相关参数与控制界面上的交互控制对象进行一一关联,形成一对一的连接,其中,交互控制对象可以为控制界面中的按钮。

例如,本申请中的渲染机可以包括8个虚拟摄影机,分别为K1、K2…K7、K8,每一个按钮都与对应的虚拟摄影机进行关联,用户在控制界面可以通过K1至K8按钮控制对应的虚拟摄影机。其中,在控制界面中,按钮的显示信息可以基于虚拟摄影机的名称进行修改,以方便用户使用。

在完成虚拟摄影机的绑定之后,还可以通过虚拟摄影机交互控制单元的交互控制对象对虚拟摄影机的参数进行关联,即基于虚拟摄影机交互控制单元的交互控制对象得到虚拟摄影机的相关参数。虚拟摄影机的相关参数可以包括虚拟摄影机的外部参数和虚拟摄影机自身参数,虚拟摄影机的外部参数可以包括虚拟摄影机的位置、旋转角度、移动速度以及移动距离中的至少一种,虚拟摄影机自身参数可以包括焦距、焦点以及曝光程度中的至少一种。

对于画面监看交互控制单元,将控制界面中画面监看交互控制单元的交互控制对象与渲染机的画面监看参数进行关联,即基于画面监看交互控制单元的交互控制对象得到渲染机的画面监看参数。其中,交互控制对象可以包括人物特写、人物近景、人物中景、人物全景、人物推拉、人物环境、远景摇臂以及舞蹈中的至少一种。通过控制界面的交互控制对象控制画面监看参数,可以切换对应的监看画面。

对于触发转换交互控制单元,将触发转换交互控制单元的交互控制对象与渲染机的功能调整参数进行关联,即基于触发转换交互控制单元的交互控制对象得到渲染机的功能调整参数。其中,触发转换交互控制单元的交互控制对象可以包括动画序列、视觉特效、音乐、场景转换中的至少一种,将与交互控制对象相关的文件放置于特定的文件夹下,将功能调整参数与对应的交互控制对象进行关联,可以实现对实时渲染视频添加对应的功能。其中,动画序列可以包括运动曲线,画面叠加、画面缩放中的至少一种;视觉特效可以包括滤镜、过渡、灯光、粒子中的至少一种;音乐可以包含直播过程中所使用的音乐文件;场景转换可以包括淡入、淡出、抠像中的至少一种,通过场景转换可以设置镜头切换的效果。

本申请的控制界面的交互控制对象(即控制按钮)可以根据用户的需要进行自定义的设置,在完成设置之后,与渲染机对应的渲染参数进行关联。在本申请的一个实施例中,还可以在控制界面设置连接按钮,可以通过连接按钮将控制界面的按钮与渲染机的渲染参数进行一键关联,有利于简化控制中心与渲染机之间的连接流程。

在本申请示例性的实施例中,本申请还可以基于控制中心包含的控制设备的控制权限设置控制信息,其中,控制信息可以通过控制界面的按钮进行显示。示例性地,控制中心的控制设备01可以对所有的渲染机的渲染参数进行控制,则控制设备01的控制界面可以包含控制所有渲染机的渲染参数的按钮;控制设备02可以控制渲染机的虚拟摄影机的参数,则控制设备02的控制界面可以包含控制渲染机的虚拟摄影机的参数的按钮。基于目标控制设备的权限对每个目标控制设备的控制界面进行个性化设置,在满足目标控制设备对渲染机对应的渲染参数进行控制的同时,可以避免由于按钮的误触发导致直播事故。

在步骤122中,对第一实时渲染画面进行监测,得到实时监测结果。

示例性地,控制中心可以通过画面监看交互控制单元监测获得的第一实时渲染画面是否符合生成虚拟直播视频的要求,确定实时监测结果。

在步骤123中,基于实时监测结果和控制信息生成控制指令,控制指令用于调整关联的第一渲染机的渲染参数。

示例性地,基于实时监测结果确定第一实时渲染画面中需要调整的内容,即需要调整的渲染机的渲染参数,并通过控制信息(控制界面的交互控制对象)生成对应的控制指令。控制指令可以对完成关联的渲染机的渲染参数进行实时调整,通过调整渲染机的渲染参数,可以获得符合要求的实时渲染画面。

示例性地,用户可以通过控制界面对虚拟摄影机的参数进行自定义调整更新,利用更新的控制信息生成控制指令。例如,可以通过交互摇杆调节虚拟摄影机的位置和旋转角度,生成位置控制指令和旋转角度控制指令;还可以通过滑动块调节虚拟摄影机的参数,生成焦距控制指令、曝光程度控制指令等。

示例性地,画面监看交互控制单元为控制中心通过获得渲染机中虚拟摄影机的画面内容,并绘制到该控制界面的画面监看交互控制单元上。虚拟摄影机的画面内容主要包括两类,一类是所有虚拟摄影机拍摄的画面,另一类是当前选中推送的虚拟摄影机的画面,推送的虚拟摄影机的画面可以是某个虚拟摄影机拍摄的画面,也可以是经过抠像合成的画面,还可以是指定的视频或者图像。

用户还可以结合画面监看交互控制单元的内容生成对应的控制指令,基于控制指令对虚拟摄影机的参数进行一键调整。例如,画面监看交互控制单元可以包括人物特写、人物近景、人物中景、人物全景、人物推拉、人物环境、远景摇臂以及舞蹈等。例如,不同的监看画面中,虚拟人物占据摄影画面的比例不同,可以基于虚拟摄影机与虚拟人物的相对位置,通过画面监看交互控制单元的按钮,生成控制指令,基于控制指令一键自动调节虚拟摄影机的参数,以使虚拟摄影机能够处于与虚拟人物对应的指定机位或者调节为指定摄影参数。

以人物特写为例,摄影画面的下边缘为虚拟人物的肩部位置,并且完整显示虚拟人物,因此,可以选中人物特写按钮,生成人物特写的控制指令,控制指令中包含虚拟摄影机参数调整信息,通过调整虚拟摄影机的位置或者焦距等参数,使得虚拟摄影机可以采集虚拟人物特写画面。需要说明的是,本申请基于控制界面对虚拟摄影机的控制信息为示例性说明,可以结合实际需求对虚拟摄影机的控制信息进行调整,本申请对此不做限制。

示例性地,对于触发转换交互控制单元,控制中心可以基于实时监测结果选择控制界面中的触发转换部分的按钮,生成控制指令。例如,控制界面中的音乐M1至M8已经关联虚拟直播过程中所需要的音乐文件,通过选择音乐按钮,可以生成对应的音乐控制指令,为实时渲染画面增加对应的音乐。

在步骤130中,向第一渲染机发送控制指令。

在本申请示例性的实施例中,控制中心通过控制界面生成对应的控制指令,控制中心还可以基于IP协议,例如开放声音控制协议(Open Sound Control,OSC)将控制指令通过特定的网络端口发送至渲染机。

需要说明的是,利用控制界面可以生成多种控制指令,并且控制中心生成的控制指令同时发送至第一渲染机和第二渲染机,在此只进行示例性说明,本申请对此不做限制。

根据本申请示例性的实施方式,通过将控制界面与渲染机的渲染参数进行关联,对实时渲染画面进行监测,通过控制界面可以实时生成控制指令,对渲染机的渲染参数进行及时调整,使渲染机生成更新的实时渲染画面,增强了控制中心与渲染机的交互性,在一定程度上可以避免由于渲染机的数据不符合要求导致渲染画面无法使用,造成虚拟直播视频的质量较差。

在步骤140中,获取第一渲染机发送的第二实时渲染画面,第二实时渲染画面利用调整后的渲染参数进行实时渲染得到,调整后的渲染参数基于控制指令对第一渲染机的渲染参数进行调整得到。

在本申请示例性的实施例中,第一渲染机和第二渲染机可以利用特定的网络端口对控制中心进行监测,当渲染机的特定网络端口接收到控制指令之后,可以对控制指令进行解析处理,得到控制指令中的参数调整信息,并基于参数调整信息对渲染机的渲染参数进行调整。渲染机基于调整后的渲染参数执行对应的渲染操作,更新实时渲染画面,得到第二实时渲染画面。例如,通过控制指令调整虚拟摄影机的位置、完成摄影画面的切换、为实时渲染画面增加特效等,得到对应的第二实时渲染画面,然后渲染机可以将第二实时渲染画面发送至控制中心。

在步骤150中,基于第二实时渲染画面,生成虚拟直播视频。

在本申请示例性的实施例中,控制中心还可以生成基础指令,基于基础指令对第二实时渲染画面进行处理,得到虚拟直播视频,其中,基础指令为控制中心在获得第二实时渲染画面之后,对第二实时渲染画面进行处理的指令。

示例性地,基础指令可以包括虚拟抠像、视频播放、图文包装、视频合成等,基础指令主要用于控制中心对第二实时渲染画面的后期处理,并不会与渲染机产生实时的交互行为。

在一个实施例中,在获得第二实时渲染画面之后,可以通过基础指令图文包装为第二实时渲染画面配置字幕信息。在另一个实施例中,当控制中心需要进行视频合成时,可以同时接收多个第二实时渲染画面,通过视频合成的基础指令,将多个第二实时渲染画面进行合成,得到合成的渲染视频数据。在通过基础指令对第二实时渲染画面进行处理之后,可以得到虚拟直播视频,然后可以将虚拟直播视频推送至直播平台完成直播。

根据本申请示例性的实施方式,控制中心在获取渲染机的第一实时渲染画面之后,利用控制指令对渲染机的渲染参数进行调整,渲染机利用调整后的渲染参数进行实时渲染,得到第二实时渲染画面,控制中心利用第二实时渲染画面生成虚拟直播视频,控制中心通过控制指令对生成的实时渲染画面进行实时调整,得到更新的实时渲染画面,可以提高控制中心与渲染机之间的实时交互性,得到更优质的虚拟直播视频。并且通过控制指令对渲染机进行控制,交互操作直观快捷。

图8所示为本申请实施例提供的一种虚拟直播视频的生成装置的结构示意图,如图8所示,该装置包括:

第一获取模块810,用于获取第一渲染机发送的第一实时渲染画面。

第一生成模块820,用于基于第一实时渲染画面,生成用于调整第一渲染机的渲染参数的控制指令。

在本申请一个示例性的实施例中,第一生成模块820用于获取配置的控制信息,控制信息与第一渲染机的渲染参数关联;对第一实时渲染画面进行监测,到实时监测结果;基于实时监测结果和控制信息生成控制指令,控制指令用于调整关联的第一渲染机的渲染参数。

在本申请一个示例性的实施例中,第一生成模块820用于基于配置的控制信息生成控制界面,控制界面包括多个交互控制单元,交互控制单元包括多个交互控制对象;将交互控制对象与第一渲染机的渲染参数关联。

示例性地,交互控制单元包括:画面监看交互控制单元、虚拟摄影机交互控制单元以及触发转换交互控制单元。其中,虚拟摄影机交互控制单元的交互控制对象包括虚拟摄影机的外部参数和虚拟摄影机自身参数,虚拟摄影机的外部参数包括位置、旋转角度、移动速度以及移动距离中的至少一种,虚拟摄影机自身参数包括焦距、焦点以及曝光程度中的至少一种。触发转换交互控制单元的交互控制对象包括动画序列、视觉特效、音乐、场景转换中的至少一种。

发送模块830,用于向第一渲染机发送控制指令。

第二获取模块840,用于获取第一渲染机发送的第二实时渲染画面,第二实时渲染画面为利用调整后的渲染参数进行实时渲染得到的渲染画面,调整后的渲染参数为基于控制指令对第一渲染机的渲染参数进行调整得到。

第二生成模块850,用于基于第二实时渲染画面,生成虚拟直播视频。

在本申请一个示例性的实施例中,虚拟直播视频的生成装置还可以包括通信连接模块(图中未示出),其中,通信连接模块用于接收到第一渲染机的连接请求,根据连接请求获取第一渲染机的互联网协议地址;确定接收到连接请求的第一渲染机的数量,确定用于备份的多个第二渲染机,获取第二渲染机的互联网协议地址,第二渲染机的数量与第一渲染机的数量相同,第二渲染机与第一渲染机一一对应,且第二渲染机与第一渲染机接收相同的控制指令;基于第一渲染机和第二渲染机的互联网协议地址,分别与第一渲染机和第二渲染机进行通信连接。

在本申请一个示例性的实施例中,通信连接模块用于确定用于控制第一渲染机和第二渲染机的控制设备的数量;响应于控制设备的数量为多个,在多个控制设备中确定目标控制设备,配置目标控制设备的控制权限;将目标控制设备分别与第一渲染机和第二渲染机进行通信连接,以使基于目标控制设备的控制权限来对第一渲染机和第二渲染机进行控制。

根据本申请示例性的实施方式,在获取渲染机的第一实时渲染画面之后,利用控制指令对渲染机的渲染参数进行调整,渲染机利用调整后的渲染参数进行渲染,得到第二实时渲染画面,利用第二实时渲染画面生成虚拟直播视频,通过控制指令对生成的实时渲染画面进行实时调整,得到更优质的虚拟直播视频。并且通过控制指令对渲染机进行控制,交互操作直观快捷。

应理解的是,上述提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图9为本申请实施例提供的终端设备的结构框图。该终端设备1100可以是便携式移动终端,比如:智能手机、平板电脑、播放器、笔记本电脑或台式电脑。终端设备1100还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端设备1100包括有:处理器1101和存储器1102。

处理器1101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1101可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1101所执行以实现本申请中图2所示的方法实施例提供的虚拟直播视频的生成方法。

在一些实施例中,终端设备1100还可选包括有:外围设备接口1103和至少一个外围设备。处理器1101、存储器1102和外围设备接口1103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1103相连。具体地,外围设备包括:射频电路1104、显示屏1105、摄像头组件1106、音频电路1107和电源1109中的至少一种。

外围设备接口1103可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1101和存储器1102。在一些实施例中,处理器1101、存储器1102和外围设备接口1103被集成在同一芯片或电路板上;在一些其他实施例中,处理器1101、存储器1102和外围设备接口1103中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1104用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1104通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1104将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1104包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1104可以通过至少一种无线通信协议来与其它终端设备进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1104还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1105用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1105是触摸显示屏时,显示屏1105还具有采集在显示屏1105的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1101进行处理。此时,显示屏1105还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1105可以为一个,设置在终端设备1100的前面板;在另一些实施例中,显示屏1105可以为至少两个,分别设置在终端设备1100的不同表面或呈折叠设计;在另一些实施例中,显示屏1105可以是柔性显示屏,设置在终端设备1100的弯曲表面上或折叠面上。甚至,显示屏1105还可以设置成非矩形的不规则图形,也即异形屏。显示屏1105可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。

摄像头组件1106用于采集图像或视频。可选地,摄像头组件1106包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端设备1100的前面板,后置摄像头设置在终端设备1100的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1106还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1107可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1101进行处理,或者输入至射频电路1104以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端设备1100的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1101或射频电路1104的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1107还可以包括耳机插孔。

电源1109用于为终端设备1100中的各个组件进行供电。电源1109可以是交流电、直流电、一次性电池或可充电电池。当电源1109包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端设备1100还包括有一个或多个传感器1110。该一个或多个传感器1110包括但不限于:加速度传感器1111、陀螺仪传感器1112、压力传感器1113、光学传感器1115以及接近传感器1116。

加速度传感器1111可以检测以终端设备1100建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1111可以用于检测重力加速度在三个坐标轴上的分量。处理器1101可以根据加速度传感器1111采集的重力加速度信号,控制显示屏1105以横向视图或纵向视图进行用户界面的显示。加速度传感器1111还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1112可以检测终端设备1100的机体方向及转动角度,陀螺仪传感器1112可以与加速度传感器1111协同采集用户对终端设备1100的3D动作。处理器1101根据陀螺仪传感器1112采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1113可以设置在终端设备1100的侧边框和/或显示屏1105的下层。当压力传感器1113设置在终端设备1100的侧边框时,可以检测用户对终端设备1100的握持信号,由处理器1101根据压力传感器1113采集的握持信号进行左右手识别或快捷操作。当压力传感器1113设置在显示屏1105的下层时,由处理器1101根据用户对显示屏1105的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

光学传感器1115用于采集环境光强度。在一个实施例中,处理器1101可以根据光学传感器1115采集的环境光强度,控制显示屏1105的显示亮度。具体地,当环境光强度较高时,调高显示屏1105的显示亮度;当环境光强度较低时,调低显示屏1105的显示亮度。在另一个实施例中,处理器1101还可以根据光学传感器1115采集的环境光强度,动态调整摄像头组件1106的拍摄参数。

接近传感器1116,也称距离传感器,通常设置在终端设备1100的前面板。接近传感器1116用于采集用户与终端设备1100的正面之间的距离。在一个实施例中,当接近传感器1116检测到用户与终端设备1100的正面之间的距离逐渐变小时,由处理器1101控制显示屏1105从亮屏状态切换为息屏状态;当接近传感器1116检测到用户与终端设备1100的正面之间的距离逐渐变大时,由处理器1101控制显示屏1105从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图9中示出的结构并不构成对终端设备1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

图10为本申请实施例提供的服务器的结构示意图,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1201和一个或多个的存储器1202,其中,该一个或多个存储器1202中存储有至少一条程序代码,该至少一条程序代码由该一个或多个处理器1201加载并执行以实现图2所示的方法实施例提供的虚拟直播视频的生成方法。当然,该服务器1200还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1200还可以包括其他用于实现设备功能的部件,在此不做赘述。

在示例性实施例中,还提供了一种计算机可读存储介质,该存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以使计算机实现上述图2所示的方法实施例提供的虚拟直播视频的生成方法。

可选地,上述计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-OnlyMemory,CD-ROM)、磁带、软盘和光数据存储设备等。

在示例性实施例中,还提供了一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品中存储有至少一条计算机指令,该至少一条计算机指令由处理器加载并执行,以使计算机实现上述图2所示的方法实施例提供的虚拟直播视频的生成方法。

需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的第一实时渲染画面和第二实时渲染画面都是在充分授权的情况下获取的。

应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 一种混凝土面板坝的设计方法及凸型面板结构及施工方法
  • 一种低塑性混凝土材料坝预制排水混凝土模块及施工方法
  • 一种低塑性收缩高强混凝土及其预制基建方法
技术分类

06120116526781