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

一种视频处理方法、装置、设备及介质

文献发布时间:2023-06-19 19:27:02


一种视频处理方法、装置、设备及介质

技术领域

本公开涉及视频处理技术领域,尤其涉及一种视频处理方法、装置、设备及5介质。

背景技术

在三维虚拟场景的线上课堂中,视频是其中的关键内容。为了能够灵活适应课堂内容,经常需要在录制的原始视频的基础上进行二次剪辑。目前,一般是先

将原始视频和插入的新视频进行合成,再通过预览合成后的视频,判断能否正常0播放。然而,该方式无法在二次编辑过程中对视频进行灵活剪辑,而且,视频合

成非常耗时耗资源,若不能正常播放,则需要重新二次地剪辑、合成,极大地浪费时间和资源。因此,目前存在着如何提高视频编辑灵活性和视频生成效率的问题。

发明内容

5为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一

种视频处理方法、装置、设备及介质。

根据本公开的一方面,提供了一种视频处理方法,包括:

获取原始视频和待替换的第一视频;

当获取到视频预览指令时,将所述第一视频作为当前视频,并执行如下视频0处理操作:

播放所述原始视频和所述当前视频,并在播放过程中,比较所述当前视频的时长与所述原始视频中预设的剪辑时间是否相等;

如果不相等,则根据比较结果对所述当前视频进行剪辑,得到新的当前视频;

执行至少一次所述视频处理操作,直至所述新的当前视频的时长与所述剪辑5时间相等时停止,并将所述新的当前视频确定为第二视频;

根据所述第二视频和所述原始视频进行视频合成,得到目标视频。

根据本公开的另一方面,提供了一种视频处理装置,包括:

视频获取模块,用于获取原始视频和待替换的第一视频;

视频预览模块,用于当获取到视频预览指令时,将所述第一视频作为当前视频,并执行如下视频处理操作:

播放所述原始视频和所述当前视频,并在播放过程中,比较所述当前视频的时长与所述原始视频中预设的剪辑时间是否相等;

如果不相等,则根据比较结果对所述当前视频进行剪辑,得到新的当前视频;

执行至少一次所述视频处理操作,直至所述新的当前视频的时长与所述剪辑时间相等时停止,并将所述新的当前视频确定为第二视频;

视频合成模块,用于根据所述第二视频和所述原始视频进行视频合成,得到目标视频。

根据本公开的另一方面,提供了一种电子设备,所述电子设备包括:处理器;

用于存储所述处理器可执行指令的存储器;

所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述视频处理方法。

根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,当所述计算机指令在终端设备上运行时,使得所述终端设备实现上述方法。

本公开实施例提供的技术方案与现有技术相比具有如下优点:

本公开实施例提供的视频处理方法、装置、设备及介质,包括:获取原始视频和待替换的第一视频;当获取到视频预览指令时,将第一视频作为当前视频,并执行如下视频处理操作:播放原始视频和当前视频,并在播放过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等;如果不相等,则根据比较结果对当前视频进行剪辑,得到新的当前视频;执行至少一次视频处理操作,直至新的当前视频的时长与剪辑时间相等时停止,并将新的当前视频确定为第二视频;根据第二视频和原始视频进行视频合成,得到目标视频。本公开能够在视频预览阶段调整好原始视频和当前视频在时间维度上的适配性,减少视频合成次数,提高视频生成效率。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

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

图1为本公开实施例提供的视频处理方法流程图;

图2为本公开实施例提供的一种视频处理操作流程图;

图3为本公开实施例提供的另一种视频处理操作流程图;

图4为本公开实施例提供的视频处理过程示意图;

图5为本公开实施例提供的同步对齐方法流程图;

图6为本公开实施例提供的同步对齐的信令交互示意图;

图7为本公开实施例提供的视频处理装置的结构示意图;

图8为本公开实施例提供的电子设备的结构示意图。

具体实施方式

为了能够更清楚地理解本公开的上述目的、特征和优点,下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。

应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。

本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。

需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。

本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。

针对如何提高视频编辑灵活性和视频生成效率的问题,本公开实施例提供了一种视频处理方法、装置、设备及介质,为便于理解,以下对本公开实施例展开描述。

图1为本公开实施例提供的一种视频处理方法的流程图,该方法可以由视频处理装置执行,该装置可以采用软件和/或硬件实现。参照图1,视频处理方法可以包括如下步骤。

步骤S102,获取原始视频和待替换的第一视频。

在本实施例中,原始视频例如可以是对直播课堂进行录制得到的视频。为了使原始视频能够灵活适应个性化的课堂内容,通常可以获取新的第一视频,基于第一视频对原始视频进行二次编辑。第一视频可以是实时录制的视频,从本地上传的视频或网上下载的视频等。参照图4,对于录制的第一视频和本地的第一视频,为了避免操作失误使第一视频丢失,或者为了重复使用第一视频,在得到第一视频后,还可以将第一视频上传至云端进行保存;而后在二次编辑时再从云端下载第一视频。

步骤S104,当获取到视频预览指令时,将第一视频作为当前视频,并执行如下视频处理操作。

在本实施例中,当用户触发按钮、控件或图标等表示视频预览的信息时,终端设备可以获取视频预览指令,并根据视频预览指令开始执行至少一次如下步骤S106-S108所示的视频处理操作。

步骤S106,播放原始视频和当前视频,并在播放过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等;如果不相等,则执行如下步骤S108;如果相等,则执行如下步骤S110。

本实施例可以在原始视频中确定需要进行二次编辑的开始时间和结束时间,从开始时间到结束时间的时间段为剪辑时间。根据预设的预览方式播放原始视频和第一视频;其中,预览方式为:在剪辑时间内,将播放的视频从原始视频替换为当前视频。

示例性的,原始视频的开始播放时间可以表示为t0,按照原始视频的播放时间轴实时记录原始视频的播放时间ti。当播放时间达到剪辑时间中的开始时间(t1)时,暂停播放原始视频并开始播放当前视频;当当前视频播放结束时,将原始视频的播放进度跳转至剪辑时间中的结束时间(t2),并从结束时间播放原始视频。

为了减少对用户的使用约束,本实施例对第一视频没有时长限制,用户可以自由采集任意时长的第一视频,或从本地上传任意时长的第一视频。然而,在对原始视频进行二次编辑后形成的新视频中,需要第一视频的时长与原始视频的剪辑时间相匹配,才能够在剪辑时间中的开头和结尾处,正常播放切换前后的视频,避免因第一视频的时长过短而出现视频缺失,或因第一视频的时长过长而出现视频重叠或视频覆盖等异常播放效果。

基于以上考虑,为了使当前视频的时长与剪辑时间相匹配,本实施例可以在播放原始视频和当前视频的过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等;如果不相等,则执行如下步骤S108,对当前视频进行剪辑;如果相等,则执行如下步骤S110。

步骤S108,根据比较结果对当前视频进行剪辑,得到新的当前视频。

在本实施例中,在当前视频的时长大于剪辑时间的情况下,在当前视频中选取与剪辑时间的时长相等的视频片段,得到新的当前视频。

在当前视频的时长小于剪辑时间的情况下,可以删除当前视频,再重新获取一个视频,基于该重新获取的视频确定新的当前视频。或者,还可以在当前视频的基础上,再获取一个能够填充缺失时长的新的视频,基于当前视频和该新的视频确定新的当前视频。

为了便于描述,当前视频可表示为V

步骤S110,新的当前视频的时长与剪辑时间相等时停止视频处理操作,并将新的当前视频确定为第二视频。

具体的,重复执行视频处理操作,直至新的当前视频的时长与剪辑时间相等时停止,而后,将停止视频处理操作时得到的新的当前视频确定为第二视频。

在以上述播放原始视频和当前视频的过程中,并未对原始视频进行剪切,也未将当前视频与原始视频进行合成,换言之,此时尚未对当前视频和原始视频进行任何剪辑操作,仅相当于是采用替换方式播放多个视频。因此,该视频预览过程无需额外消耗视频剪辑资源。本实施例在视频预览阶段并不进行视频合成,减少了时间和资源的消耗,可以方便用户随时、多次调整原始视频、当前视频、剪辑时间等剪辑内容,直至预览当前视频和原始视频对应的二次编辑效果满足用户要求为止。

步骤S112,根据第二视频和原始视频进行视频合成,得到目标视频。

在本实施例中,根据上述方式至少一次执行视频处理操作,在满足视频能够按照剪辑时间进行替换播放、视频时长互相匹配、视频内容衔接流畅等播放效果后,用户可以发起视频合成指令。而后根据视频合成指令将原始视频和第二视频合成为目标视频,具体合成方式例如为:将原始视频中剪辑时间对应的视频片段进行删除,并将第二视频插入到原始视频中的剪辑时间内,得到目标视频。

本实施例先进行视频预览后进行视频合成,这样既能够保证视频合成效果,又能够减少视频合成次数,在满足视频合成效果后仅需一次视频合成操作即可,明显地降低了对时间和资源的消耗。

本公开实施例提供的视频处理方法,首先获取原始视频和待替换的第一视频。然后,当获取到视频预览指令时,将第一视频作为当前视频,并执行如下视频处理操作:播放原始视频和当前视频,并在播放过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等;如果不相等,则根据比较结果对当前视频进行剪辑,得到新的当前视频。执行至少一次上述视频处理操作,直至新的当前视频的时长与剪辑时间相等时停止,并将新的当前视频,确定为第二视频。而后根据第二视频和原始视频进行视频合成,得到目标视频。

本技术方案在视频合成之前,通过执行至少一次视频处理操作,对当前视频进行反复多次剪辑,方便用户多次调整二次剪辑的内容,直至当前视频的时长与剪辑时间相等时停止;此时确定的第二视频在时间维度上满足视频合成的条件,而后再根据第二视频和原始视频进行视频合成;该方式能够在视频预览阶段调整好原始视频和当前视频在时间维度上的适配性,从而只需一次视频合成即可得到满足播放效果的目标视频,有效减少了视频合成次数和不必要的视频合成所消耗的时间和资源,提高了视频生成效率。

参照图2,在此提供一种执行视频处理操作的实施例,包括如下内容。

步骤S202,播放原始视频和当前视频V

结合图3,具体可以从t0开始播放原始视频,当原始视频的播放时间ti=t1时,先暂停播放原始视频并开始播放当前视频;当当前视频播放结束时,再从t2开始继续播放原始视频。在播放过程中,不需要对原始视频进行剪切,也不需要将第一视频与当前视频进行合成,仅采用替换方式播放多个视频,从而该视频预览过程无需额外消耗视频剪辑资源。

考虑到,剪辑时间中的开始时间和结束时间,作为原始视频和当前视频衔接的关键时间点,最容易出现播放异常问题。基于此,本实施例在播放原始视频和当前视频的过程中,可以有选择性的灵活播放上述关键时间点对应的视频片段,在此提供几种灵活播放的实施例。

一种实施例中,开始播放原始视频的方式可以包括:在原始视频的时间轴上,根据预设的第一时间间隔确定剪辑时间中开始时间之前的第一时间;从第一时间开始播放原始视频。

在实际应用中,开始时间t1之前的原始视频一般不会出现播放问题,可以只质检原始视频与当前视频之间的衔接时间段,也即开始时间t1前后是否能够正常播放。基于此,根据第一时间间隔Δt1确定剪辑时间中开始时间他之前的第一时间t1′,即t1′=t1-Δt1,将原始视频的播放进度直接跳转至第一时间后再开始播放原始视频。当原始视频的播放时间达到剪辑时间中的开始时间t1时,暂停播放原始视频并开始播放当前视频;当当前视频播放结束时,将原始视频的播放进度跳转至剪辑时间中的结束时间,并从结束时间播放原始视频。本实施例从开始时间之前的第一时间开始播放原始视频的方式,既不会遗漏原始视频中关键的视频片段,又减少了视频预览时间。

与之相似的,针对当前视频,播放其关键时间点对应的视频片段的方式可以为:在当前视频的时间轴上,根据预设的第二时间间隔确定当前视频的结束时间之前的第二时间;当当前视频的播放时长达到预设时长阈值时,将当前视频的播放进度跳转至第二时间;从第二时间继续播放当前视频,直至当前视频播放结束。

具体的,当前视频中间的视频片段通常不会出现播放问题,可以只质检当前视频与原始视频之间的衔接时间段是否能够正常播放。在本实施例中,暂停播放原始视频并开始播放当前视频,当前视频播放一段时间达到预设时长阈值(如5秒)之后,可以跳过不会出现播放问题的中间视频片段,将当前视频的播放进度跳转至结束时间之前的第二时间,从第二时间继续播放当前视频,直至当前视频播放结束,此时从剪辑时间中的结束时间t2继续播放原始视频。本实施例开始播放当前视频一段时间后,直接跳转至结束时间之前的第二时间继续播放,该方式既不会遗漏当前视频中关键的视频片段,又减少了视频预览时间。

另一种实施例中,在播放原始视频和当前视频的过程中,当获取到拖拽指令时,将原始视频或当前视频的播放进度调整至拖拽指令结束位置对应的时间。

本实施例根据拖拽指令可以拖拽视频播放进度,将视频播放进度快速地拖拽至需要关注的开始时间、结束时间等视频衔接的关键时间节点。以原始视频的播放时间为参考,这样在拖拽视频播放进度时,原始视频的播放时间会随着拖拽动作而实时更新,不会影响原始视频和当前视频之间的替换播放。例如,开始时间t1之前的原始视频一般不会出现播放问题,于是,将原始视频的播放进度直接拖拽至接近开始时间t1后再进行播放,检查开始时间t1前后的原始视频和当前视频是否正常播放。同样的,对于当前视频也可以拖拽至接近结束时间t2后再播放,检查结束时间t2前后的当前视频和原始视频是否正常播放。本实施例通过拖拽视频播放进度,可以缩减视频预览时间,进一步提升视频二次剪辑的效率。

步骤S204,在播放过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等。如果相等,则参照如下步骤S210,停止视频处理操作,并确定第二视频。如果不相等,则在当前视频的时长大于剪辑时间的情况下,执行如下步骤S206,或者,在当前视频的时长小于剪辑时间的情况下,执行如下步骤S208。

步骤S206,在当前视频的时长大于剪辑时间的情况下,在当前视频中选取与剪辑时间的时长相等的视频片段,得到新的当前视频。

在一示例中,可以先在当前视频中确定与剪辑时间的时长相等的目标时间段,然后在当前视频中截取目标时间段对应的视频片段,得到一段时长为剪辑时间的新的当前视频;为便于区分,该新的当前视频可表示为V

步骤S208,在当前视频的时长小于剪辑时间的情况下,删除当前视频并获取第三视频。

在本实施例中,第三视频可以是实时录制的视频,从本地上传的视频,或是网上下载的视频等,且第三视频可以上传至云端进行保存。考虑到第三视频与第一视频相似,均是未经剪辑的新视频,从而,两者的处理方式类似,也即,将第三视频同样作为当前视频,并执行视频处理操作。

具体的,针对第三视频,回到步骤S202,播放原始视频和第三视频;在播放过程中,比较第三视频的时长与剪辑时间的是否相等;如果不相等,则如步骤S206或S208,根据比较结果对第三视频进行剪辑,得到新的当前视频;如果相等,则执行如下步骤S210。

步骤S210,停止视频处理操作,并将新的当前视频确定为第二视频。

重复执行上述步骤S202至S208,直至当前视频的时长与原始视频中的剪辑时间相等时停止,此时的当前视频在时间维度上满足合成条件,从而将其确定为可用于下一步视频合成的第二视频。

参照图3,在此提供另一种执行视频处理操作的实施例,包括如下内容。

步骤S302,播放原始视频和当前视频V

步骤S304,在播放过程中,比较当前视频的时长与原始视频中预设的剪辑时间是否相等。如果相等,则执行如下步骤S314,停止视频处理操作,并确定第二视频。如果不相等,则在当前视频的时长大于剪辑时间的情况下,执行如下步骤S306,或者,在当前视频的时长小于剪辑时间的情况下,执行如下步骤S308-S312。

步骤S306,在当前视频的时长大于剪辑时间的情况下,在当前视频中选取与剪辑时间的时长相等的视频片段,得到新的当前视频。

步骤S308,在当前视频的时长小于剪辑时间的情况下,确定剪辑时间与当前视频的时长之间相差的缺失时长。

步骤S310,获取不小于缺失时长的第四视频。具体可以通过录制或上传等方式,获取时长能够足够填充缺失时长的第四视频。

步骤S312,将当前视频和第四视频的组合作为新的当前视频。

本实施例先确定缺失时长,再获取不小于缺失时长的第四视频,能够使组合后的新的当前视频的时长不小于剪辑时间,便于从中选取与剪辑时间相等的视频片段,避免操作次数过多。

针对新的当前视频V

步骤S314,停止视频处理操作,并将新的当前视频确定为第二视频。

重复执行上述步骤S302至S314,直至当前视频的时长与原始视频中的剪辑时间相等时停止,此时的当前视频在时间维度上满足合成条件,从而将其确定为可用于下一步视频合成的第二视频。

如图4所示,根据以上实施例得到在播放时间上与原始视频相匹配的第二视频,在此情况下播放原始视频和第二视频可以包括:开始播放原始视频,当播放时间达到剪辑时间中的开始时间(t1)时,暂停播放原始视频并开始播放第二视频;当第二视频播放结束时,将原始视频的播放进度跳转至剪辑时间中的结束时间(t2),并从结束时间播放原始视频。由于第二视频的时长与开始时间t1和结束时间t2确定的剪辑时间相等,因此,当第二视频播放结束时,原始视频应该恰好从结束时间t2继续播放。在此情况下,将原始视频的播放进度从暂停时的时间节点t1跳转至需要播放的时间节点t2,也即将原始视频的播放进度跳转至剪辑时间中的结束时间,并从结束时间继续播放原始视频。

在一种实施例中,可以直接将第二视频和原始视频合成为目标视频。

在另一种实施例中,为了进一步提升视频合成质量,在此可以提供如下一种视频合成方法,包括:

检测替换播放前后的视频内容的关联度。

在一具体方式中,分别提取替换播放前的第一视频画面和第一音频,以及替换播放后的第二视频画面和第二音频;对第一视频画面和第二视频画面进行相似度计算,得到第一相似度;对第一音频和第二音频进行相似度计算,得到第二相似度;根据第一相似度和第二相似度得到替换播放前后的视频内容的关联度。

在关联度高于预设关联度阈值的情况下,根据第二视频和原始视频进行视频合成,得到目标视频。关联度高于预设关联度阈值,表示替换播放前后的视频内容变化较小,前后内容连贯和谐,未出现画面突变等异常情况。

基于此,当获取到视频合成指令时,删除原始视频中剪辑时间对应的视频片段,将第二视频插入到原始视频中的剪辑时间内,得到目标视频。本实施例在获取到视频合成指令的情况下再合成目标视频,可以减少视频合成次数,提高视频生成效率,同时,能够为用户保留可操作空间,方便用户在确定视频合成之前随时操作处理。

在三维虚拟场景的线上课堂中,互动信令是除视频之外的另一项关键内容,诸如发放奖励、召集学生、语音互动等,能够提高线上课堂的趣味性。互动信令用于随着视频的播放,在三维虚拟场景中触发与课堂内容相匹配的互动效果,因此,互动信令的触发时间需要与视频的播放时间保持同步对齐。然而,视频的二次剪辑可能会破坏互动信令与原始视频之间的对齐关系。

基于此,本实施例需要在二次剪辑后,将目标视频与互动信令进行同步对齐。目前主要存在如下对齐方案。在方案一中,以每秒一次的频率校准视频播放进度,根据视频的播放时间计算出对应的时间点是否有互动信令播放;该方案中的视频播放依赖网络,可能会存在卡顿、缓冲的情况,从而造成视频与互动信令不能实时严格对齐的问题。在方案二中,可以通过互动信令来同步控制视频的播放,但是,这样就不能灵活地拖拽视频播放进度。

针对上述问题,本公开实施例可以提供一种视频和互动信令的对齐方法,参照以下内容。

在本实施例中,原始视频预先关联有互动信令。相应地,本实施例提供的方法包括:将目标视频与互动信令进行同步对齐。

其中,原始视频预设的互动信令为至少一个,各互动信令均携带各自的信令触发时间,也即在信令触发时间会触发互动信令对应的互动效果,例如:第10秒时的发放奖励、第20秒时的老师走动、第25秒时的召集学生、第50秒时的语音互动等。

在一种互动信令的获取方式中,可以获取与原始视频关联的信令资源;解析信令资源,得到至少一个携带信令触发时间的互动信令。具体如图6所示,可以根据原始视频的预设标识号,从后端服务请求到信令资源,信令资源诸如为压缩后的zip包,其中包括至少一个互动信令。互动信令可以为以二进制格式存储的二进制帧信令,这样可以占用较小的存储空间来记录更多的信息。对信令资源进行下载和解压,将解压结果存储到本地沙盒目录下。至此,完成互动信令的准备工作。

由于目标视频是在原始视频的基础上进行二次剪辑得到的,从而目标视频与互动信令之间同样具有关联关系,可以开始将目标视频与互动信令进行同步对齐。

参照图5,本实施例可以通过如下步骤实现目标视频与互动信令的同步对齐,包括:

步骤S502,播放目标视频,并通过启动本地钟服务记录目标视频的进入时长。

在本实施例中,开始播放目标视频的同时,启动本地的本地钟服务,本地钟服务如DisplayLink定时器,本地钟服务可以提供标准的时间信息。本实施例通过启动本地钟服务记录目标视频的进入时长。这里需要说明的是,进入时长是采用本地钟服务提供的时间信息记录得到的时长,表示进入目标视频的时长,在目标视频出现卡顿、暂停、快进等非正常播放的下情况,进入时长仅以本地钟服务的时间信息为标准。相比于此,视频的播放时间是以视频的播放时间轴为标准,播放时长会受到卡顿、暂停、快进等非正常播放的影响而发生变化。举例来说,在目标视频在播放过程中出现暂停的情况下,播放时长会随着暂停播放而暂停计时,而进入时长则按照本地钟服务提供的时间信息持续计时。

步骤S504,当进入时长达到互动信令携带的信令触发时间时,将目标视频的当前播放时间校准至信令触发时间。

参照图6,当进入时长达到互动信令携带的信令触发时间时,通过本地钟服务将互动信令发送给预先配置的场景服务引擎;场景服务引擎例如为unity引擎。通过场景服务引擎解析互动信令,得到互动信令对应的信令触发时间。具体的,通过场景服务引擎解析互动信令,得到互动信令所包含的信息,如:互动信令可以包括信令触发时间和触发的互动效果,此外还可以包括触发位置、触发的虚拟对象等信息,在此不作限制。场景服务引擎解析得到互动信令中的信令触发时间,将信令触发时间桥接到视频播放通道,以使视频播放通道将目标视频的当前播放时间校准至信令触发时间。

在实际应用中,视频播放通道与互动信令的触发通道不同,从而需要将目标视频与互动信令的互动效果进行同步对齐。当进入时长达到信令触发时间时,由于卡顿等原因,目标视频的播放时间不一定等于进入时长,在此情况下,为了使视频播放的内容与互动信令的互动效果之间保持同步,可以将目标视频的当前播放时间校准至信令触发时间。

本实施例中,本地钟服务能够以较高的频率(每秒15帧)发送互动信令,场景服务引擎能够低延时的解析并发送信令触发时间,从而,通过本地钟服务和场景服务引擎的互相配合,能够提高基于信令触发时间校准目标视频的播放时间的准确性。

在一种校准播放时间的具体实施例中,可以比对目标视频的当前播放时间与信令触发时间是否相同;在不相同的情况下,将目标视频的播放进度从当前播放时间跳转至信令触发时间。将目标视频的播放时间校准到信令触发时间后,目标视频的播放内容与互动信令的互动效果相匹配,两者实现了同步对齐。

在本实施例中,当进入时长达到信令触发时间时,触发互动信令对应的互动效果。包括:通过场景服务引擎解析互动信令,得到互动信令对应的互动效果;通过场景服务引擎在三维虚拟场景中触发互动效果。也就是说,本实施例在通过场景服务引擎将信令触发时间发送给视频播放通道进行时间校准的同时,还通过场景服务引擎在三维虚拟场景中触发互动信令对应的互动效果。具体以前述实施例中的互动信令为例。当目标视频的进入时长达到信令触发时间第10秒时,将目标视频的当前播放时间校准至第10秒,播放第10秒时的视频内容,同时,在三维虚拟场景中触发发放奖励的互动效果;当目标视频的进入时长达到信令触发时间第20秒时,将目标视频的当前播放时间校准至第20秒,播放第20秒的视频内容,同时,在三维虚拟场景中触发老师走动的互动效果。

在一种实施例中,提供一种将目标视频的当前播放时间进行实时校准的方法,参照如下所示。

通过本地钟服务以预设频率(每秒15帧的频率)生成包含当前时钟时间的空帧信令,并将空帧信令发送给场景服务引擎。相比于包括信令触发时间和互动效果的互动信令,空帧信令是指仅包含当前时钟时间的二进制帧信令。在实际应用中,本地钟服务以每秒15帧的频率向场景服务引擎发送二进制帧信令;可以理解,在非信令触发时间时,本地钟服务发送的二进制帧信令为空帧信令,在信令触发时间时,本地钟服务发送的二进制帧信令为互动信令。

通过场景服务引擎解析空帧信令中的当前时钟时间,并将当前时钟时间桥接到视频播放通道,以使视频播放通道将目标视频的当前播放时间校准至当前时钟时间。空帧信令中不包含互动效果,从而空帧信令通常只用于校准目标视频的当前播放时间。在校准时,获取目标视频的当前播放时间;比当前播放时间与当前时钟时间是否相同;在不相同的情况下,将目标视频的播放进度从当前播放时间跳转至当前时钟时间。

本实施例中,空帧信令和互动信令的发送频率较高,从而能够实时且更加准确的校准目标视频的当前播放时间,尤其是在利用互动信令校准当前播放时间的情况下,还能够同时将视频的播放时间与互动效果进行同步对齐。

本实施例将目标视频与互动信令进行同步对齐,能够提高目标视频的播放进度与互动信令的互动效果之间的同步性和一致性。

图7为本公开实施例提供的一种视频处理装置的结构示意图,该装置可以用于实现上述视频处理方法,该装置可以采用软件和/或硬件实现。参照图7,视频处理装置700可以包括:

视频获取模块702,用于获取原始视频和待替换的第一视频;

视频预览模块704,用于当获取到视频预览指令时,将所述第一视频作为当前视频,并执行如下视频处理操作:

播放所述原始视频和所述当前视频,并在播放过程中,比较所述当前视频的时长与所述原始视频中预设的剪辑时间是否相等;

如果不相等,则根据比较结果对所述当前视频进行剪辑,得到新的当前视频;

执行至少一次所述视频处理操作,直至所述新的当前视频的时长与所述剪辑时间相等时停止,并将所述新的当前视频确定为第二视频;

视频合成模块706,用于根据所述第二视频和所述原始视频进行视频合成,得到目标视频。

在一些实施例中,视频预览模块704包括第一剪辑单元,其用于:

在所述当前视频的时长大于所述剪辑时间的情况下,在所述当前视频中选取与所述剪辑时间的时长相等的视频片段,得到新的当前视频。

在一些实施例中,视频预览模块704包括第二剪辑单元,其用于:

在所述当前视频的时长小于所述剪辑时间的情况下,删除所述当前视频并获取第三视频;

比较所述第三视频的时长与所述剪辑时间的是否相等;

如果不相等,则根据比较结果对所述第三视频进行剪辑,得到新的当前视频。

在一些实施例中,视频预览模块704包括第三剪辑单元,其用于:

在所述当前视频的时长小于所述剪辑时间的情况下,确定所述剪辑时间与所述当前视频的时长之间相差的缺失时长;

获取不小于所述缺失时长的第四视频;

将所述当前视频和所述第四视频的组合作为新的当前视频。

在一些实施例中,视频预览模块704包括视频播放单元,其用于:

开始播放所述原始视频,并获取所述原始视频的播放时间;

当所述播放时间达到所述剪辑时间中的开始时间时,暂停播放所述原始视频并开始播放所述当前视频;

当所述当前视频播放结束时,将所述原始视频的播放进度跳转至所述剪辑时间中的结束时间,并从所述结束时间播放所述原始视频。

在一些实施例中,视频播放单元还用于:

在所述原始视频的时间轴上,根据预设的第一时间间隔确定所述剪辑时间中开始时间之前的第一时间;

从所述第一时间开始播放所述原始视频。

在一些实施例中,视频播放单元还用于:

在所述当前视频的时间轴上,根据预设的第二时间间隔确定所述当前视频的结束时间之前的第二时间;

当所述当前视频的播放时长达到预设时长阈值时,将所述当前视频的播放进度跳转至所述第二时间;

从所述第二时间继续播放所述当前视频,直至所述当前视频播放结束。

在一些实施例中,视频播放单元还用于:

在播放所述原始视频和所述当前视频的过程中,当获取到拖拽指令时,将所述原始视频或所述当前视频的播放进度调整至所述拖拽指令结束位置对应的时间。

在一些实施例中,视频合成模块706还用于:

检测替换播放前后的视频内容的关联度;

在所述关联度高于预设关联度阈值的情况下,根据所述第二视频和所述原始视频进行视频合成,得到目标视频。

在一些实施例中,视频合成模块706还用于:

当获取到视频合成指令时,删除所述原始视频中所述剪辑时间对应的视频片段,将所述第二视频插入到所述原始视频中的所述剪辑时间内,得到目标视频。

在一些实施例中,所述原始视频预先关联有互动信令;视频处理装置700还包括对齐模块,其用于:

将所述目标视频与所述互动信令进行同步对齐。

在一些实施例中,对齐模块还用于:

播放所述目标视频,并通过启动本地钟服务记录所述目标视频的进入时长;

当所述进入时长达到所述互动信令携带的信令触发时间时,将所述目标视频的当前播放时间校准至所述信令触发时间。

在一些实施例中,对齐模块还用于:

通过所述本地钟服务将所述互动信令发送给预先配置的场景服务引擎;

通过所述场景服务引擎解析所述互动信令,得到所述互动信令对应的所述信令触发时间;

将所述信令触发时间桥接到视频播放通道,以使所述视频播放通道将所述目标视频的当前播放时间校准至所述信令触发时间。

在一些实施例中,对齐模块还用于:

通过所述本地钟服务以预设频率生成包含当前时钟时间的空帧信令,并将所述空帧信令发送给所述场景服务引擎;

通过所述场景服务引擎解析所述空帧信令中的当前时钟时间,并将所述当前时钟时间桥接到所述视频播放通道,以使所述视频播放通道将所述目标视频的当前播放时间校准至所述当前时钟时间。

在一些实施例中,对齐模块还用于:

比对所述目标视频的当前播放时间与所述信令触发时间是否相同;

在不相同的情况下,将所述目标视频的播放进度从所述当前播放时间跳转至所述信令触发时间。

在一些实施例中,对齐模块还用于:

当所述进入时长达到所述信令触发时间时,触发所述互动信令对应的互动效果。

在一些实施例中,对齐模块还用于:

通过场景服务引擎解析所述互动信令,得到所述互动信令对应的互动效果;

通过所述场景服务引擎在三维虚拟场景中触发所述互动效果。

在一些实施例中,对齐模块还用于:

获取与所述原始视频关联的信令资源;

解析所述信令资源,得到至少一个携带信令触发时间的所述互动信令。

本实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。所述存储器存储有能够被所述至少一个处理器执行的计算机程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本公开实施例的方法。

本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开实施例的方法。

参考图8,现将描述可以作为本公开的服务器或客户端的电子设备800的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图8所示,电子设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。

电子设备800中的多个部件连接至I/O接口805,包括:输入单元806、输出单元807、存储单元808以及通信单元809。输入单元806可以是能向电子设备800输入信息的任何类型的设备,输入单元806可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元807可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元808可以包括但不限于磁盘、光盘。通信单元809允许电子设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。

计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理。例如,在一些实施例中,视频处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM802和/或通信单元809而被载入和/或安装到电子设备800上。在一些实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行视频处理方法。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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

06120115916483