CN110198420B - 基于非线性视频编辑的视频生成方法及装置 - Google Patents
基于非线性视频编辑的视频生成方法及装置 Download PDFInfo
- Publication number
- CN110198420B CN110198420B CN201910356644.7A CN201910356644A CN110198420B CN 110198420 B CN110198420 B CN 110198420B CN 201910356644 A CN201910356644 A CN 201910356644A CN 110198420 B CN110198420 B CN 110198420B
- Authority
- CN
- China
- Prior art keywords
- template
- video
- motion data
- predetermined
- preset
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Television Signal Processing For Recording (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种基于非线性视频编辑的视频生成方法及装置。其中,该方法包括:从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据;从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的;基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板,以生成运动数据对应的目标视频。本发明解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
Description
技术领域
本发明涉及视频图像处理技术领域,具体而言,涉及一种基于非线性视频编辑的视频生成方法及装置。
背景技术
目前,用户的运动数据通常是以图片、图表等形式表现,没有更视觉化、视频化的呈现方式。尤其是,对于累计一段时间的运动数据,表现方式比较单一,也难以得到用户分享。如要基于运动数据做出比较精美的视频,需要耗费大量的编辑时间,这就大大降低了用户体验。
针对上述相关技术中根据用户的运动数据生成视频的效率较低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种基于非线性视频编辑的视频生成方法及装置,以至少解决相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种基于非线性视频编辑的视频生成方法,包括:从服务端获取用户的运动数据,其中,所述运动数据为所述服务端通过预定规则对存储于所述服务端的所有运动数据进行筛选后得到的数据;从所述服务端获取预定模板,其中,所述预定模板包括:领域特定语言DSL描述的视频模板,与所述视频模板对应的素材,所述领域特定语言DSL是基于所述视频模板的展示形式确定的;基于所述预定模板中记录的模板声明,在非线性视频编辑工具中,利用所述用户的运动数据填充所述预定模板,以生成所述运动数据对应的目标视频。
可选地,所述预定规则为所述服务端根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
可选地,所述筛选条件依据以下至少之一确定:运动时间范围,运动类型,运动过程中的图片,运动过程中的视频,运动日志,运动地点。
可选地,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项。
可选地,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板包括:对所述预定模板进行验证;在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;在验证失败的情况下,提示所述预定模板验证失败。
可选地,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述运动数据对应的目标视频包括:确定存在需要下载的资源,其中,所述资源为生成所述目标视频所需的素材;利用所述素材对所述原始视频进行填充,得到所述目标视频。
可选地,生成所述运动数据对应的目标视频还包括:对利用所述素材对所述原始视频进行填充后得到的视频进行渲染,得到所述目标视频。
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成方法,包括:确定用于生成目标视频的运动数据;获取用于生成所述目标视频的预定模板;将所述运动数据和所述预定模板发送至客户端,其中,所述客户端在非线性视频编辑工具中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述目标视频。
可选地,确定用于生成目标视频的运动数据包括:通过预定规则对存储的用户的所有运动数据进行筛选,得到所述运动数据,其中,所述预定规则是根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
可选地,获取用于生成所述目标视频的预定模板包括:确定用于描述所述目标视频对应的视频模板的领域特定语言DSL以及所述视频模板对应的素材,其中,所述领域特定语言DSL是基于所述视频模板的展示形式定义的。
可选地,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项,在所述领域特定语言DSL的头部声明。
可选地,在确定用于描述所述目标视频对应的视频模板的领域特定语言DSL之后,该基于非线性视频编辑的视频生成方法还包括:利用预定插件将所述预定模板对应的文件的属性转换为所述领域特定语言DSL对应的属性。
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成装置,包括:第一获取单元,用于从服务端获取用户的运动数据,其中,所述运动数据为所述服务端通过预定规则对存储于所述服务端的所有运动数据进行筛选后得到的数据;第二获取单元,用于从所述服务端获取预定模板,其中,所述预定模板包括:领域特定语言DSL描述的视频模板,与所述视频模板对应的素材,所述领域特定语言DSL是基于所述视频模板的展示形式确定的;生成单元,用于基于所述预定模板中记录的模板声明,在非线性视频编辑工具中,利用所述用户的运动数据填充所述预定模板,以生成所述运动数据对应的目标视频。
可选地,所述预定规则为所述服务端根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
可选地,所述筛选条件依据以下至少之一确定:运动时间范围,运动类型,运动过程中的图片,运动过程中的视频,运动日志,运动地点。
可选地,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项。
可选地,所述生成单元包括:验证模块,用于对所述预定模板进行验证;第一填充模块,用于在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;提示模块,用于在验证失败的情况下,提示所述预定模板验证失败。
可选地,所述生成单元包括:第一确定模块,用于确定存在需要下载的资源,其中,所述资源为生成所述目标视频所需的素材;第二填充模块,用于利用所述素材对所述原始视频进行填充,得到所述目标视频。
可选地,所述生成单元还包括:渲染模块,用于对利用所述素材对所述原始视频进行填充后得到的视频进行渲染,得到所述目标视频。
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成装置,包括:确定单元,用于确定用于生成目标视频的运动数据;第三获取单元,用于获取用于生成所述目标视频的预定模板;发送单元,用于将所述运动数据和所述预定模板发送至客户端,其中,所述客户端在非线性视频编辑工具中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述目标视频。
可选地,所述确定单元包括:筛选模块,用于通过预定规则对存储的用户的所有运动数据进行筛选,得到所述运动数据,其中,所述预定规则是根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
可选地,所述第三获取单元包括:第二确定模块,用于确定用于描述所述目标视频对应的视频模板的领域特定语言DSL以及所述视频模板对应的素材,其中,所述领域特定语言DSL是基于所述视频模板的展示形式定义的。
可选地,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项,在所述领域特定语言DSL的头部声明。
可选地,该基于非线性视频编辑的视频生成装置还包括:转换单元,用于在确定用于描述所述目标视频对应的视频模板的领域特定语言DSL之后,利用预定插件将所述预定模板对应的文件的属性转换为所述领域特定语言DSL对应的属性。
根据本发明实施例的另外一个方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序执行上述中任意一项所述的基于非线性视频编辑的视频生成方法。
根据本发明实施例的另外一个方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的基于非线性视频编辑的视频生成方法。
在本发明实施例中,采用从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据;从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的;基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板的方式生成用户的运动数据对应的目标视频,通过本发明实施例可以利用筛选得到的运动数据以及从服务端获取的预定模板生成目标视频,实现了可以将用户的运动数据视频化的目的,达到了提高基于运动数据的视频生成的效率的技术效果,进而解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的基于非线性视频编辑的视频生成方法的流程图;
图2是根据本发明实施例的可选的基于非线性视频编辑的视频生成方法的流程图;
图3是根据本发明实施例的基于非线性视频编辑的视频生成方法的优选的流程图;
图4是根据本发明实施例的基于服务端的基于非线性视频编辑的视频生成方法的流程图;
图5是根据本发明实施例的非线性视频编辑工具预览或生成视频的流程图;
图6是根据本发明实施例的基于非线性视频编辑的视频生成装置的示意图;
图7是根据本发明实施例的可选的基于非线性视频编辑的视频生成装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种基于非线性视频编辑的视频生成方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的基于非线性视频编辑的视频生成方法的流程图,如图1所示,该基于非线性视频编辑的视频生成方法包括如下步骤:
步骤S102,从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据。
其中,预定规则为服务端根据预定模板的类型配置,并用于对用户的所有运动数据进行筛选的筛选条件。
具体地,筛选条件依据以下至少之一确定:运动时间范围,运动类型,运动过程中的图片,运动过程中的视频,运动日志,运动地点。
例如,用户在每次运动中,其运动数据会通过用户的终端设备(例如,手机,智能手环等)进行记录,并授予某些服务端权限获取这些运动数据。那么,在一些服务端中会存储有用户的运动数据。因此,可以在服务端通过不同的规则进行筛选,并与对应的预定模板一同下发给客户端。上述预定规则有服务端配置的运动时间范围、运动类型、运动数据范围、动态是否有图或视频等作为条件进行筛选。比如,过去一个月内用户的所有跑步数据,以及跑步所对应的社区动态数据,或者过去一年内用户发表的带有“打开”话题、并且带有图片的社区动态(即,上述日志)。
步骤S104,从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的。
即,在具有非线性视频编辑工具的基础上,对所需要的视频展现形式定义一个领域特定语言DSL。上述预定模板中包括:视频模板,该视频模板是由设计师们设计的视频样式,不同于拍摄的视频,它是由有限种内容和样式组合而成的。其中,内容包括但不限于:视频、图片、文字、形状。通用的内容样式可以包括但不限于以下几种:锚点、位置、透明度、缩放、旋转、起始时间点、结束时间点。不同的内容有不同的样式,对于视频有裁剪点、播放速度、音量,对于视频与图片有展示裁切模式,对于文字有内容、字体、文字大小、阴影、对齐方式、省略方式、最大宽度、最大高度、最大单行字符、最大行数等属性,对于形状有边框宽度、边框线条样式、边框颜色、填充颜色、多点位置等属性。
其中,以上的样式均可以在不同的时间点具有不同的值,且不同值之间的变化可以通过不同的插值函数来转换,在本发明实施例中对插值函数的种类不做具体限定。
步骤S106,基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板,以生成运动数据对应的目标视频。
需要说明的是,模板声明用于记录以下至少之一:预定模板生成的视频的时长,预定模板的槽,其中,预定模板的槽为预定模板的可修改项。
即,在预定模板中声明了,基于预定模板生成的视频的时长,可幅值修改的值,意味着预定模板内部可以指定哪些素材的哪些是可以通过外部修改的,这些可供修改的值称为槽,具有特定类型,一般是数字、字符串或资源文件Uri。
槽在领域特定语言DSL头部声明,名称由$符号开头,一般与最终数据同名,例如$log.distance表示数据中的log结构体中的distance字段,也可以直接指定,通过映射来获取到需要的内容。槽声明时也要指定默认值,在外部没有提供对应值时使用。使用槽时,在需要表示某个值的地方,使用槽名称即可,但需要注意类型应当一致,如指定一个视频项的源文件,应当是一个Uri,这里可以指定如$entry.videoUri,对应外部存在数据时该地址就被替换为外部提供的视频Uri,若不存在外部提供数据时,使用槽提供的默认值,一般为模板中自带的一个视频。如此类似的还有数值,可用于文本项的内容、缩放、位移、透明度等。
同时,会有若干组合项,如条件项,使用一个槽和固定值(或若干固定值)作比较,满足或不满足条件时展示不同的项,如某等级到达10后,背景图片使用金色图片,否则背景图片使用蓝色图片。
通过上述步骤,可以从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据;从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的;基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板,以生成运动数据对应的目标视频。相对于相关技术中,要基于用户的运动数据做出视频会耗费大量的编辑时间,效率较低的弊端,通过本发明实施例可以利用筛选得到的运动数据以及从服务端获取的预定模板生成目标视频,实现了可以将用户的运动数据视频化的目的,达到了提高基于运动数据的视频生成的效率的技术效果,进而解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
在一个可选的实施例中,在步骤S106中,基于预定模板中记录的模板声明,利用运动数据填充预定模板可以包括:对预定模板进行验证;在验证成功的情况下,利用运动数据填充预定模板的槽,得到运动数据对应的原始视频;在验证失败的情况下,提示预定模板验证失败。
进一步地,基于预定模板中记录的模板声明,利用运动数据填充预定模板,以生成运动数据对应的目标视频可以包括:确定存在需要下载的资源,其中,资源为生成目标视频所需的素材;利用素材对原始视频进行填充,得到目标视频。
优选的,生成运动数据对应的目标视频还包括:对利用素材对原始视频进行填充后得到的视频进行渲染,得到目标视频。
下面结合附图对本发明一个可选的实施例进行说明。
图2是根据本发明实施例的可选的基于非线性视频编辑的视频生成方法的流程图,如图2所示,从服务端获取筛选后的运动数据以及目标视频对应的预定模板,然后,验证预定模板是否有效;在验证结果为是的情况下,利用运动数据填充预定模块,即,图2中所示的“数据填入模板数据槽内”;反之,提示预定模板验证失败;在利用运动数据填充预定模块之后,判断是否存在需要下载的资源,在判断结果为是的情况下,下载该资源,并将该资源与运动数据填充预定模块之后的视频以及运动数据中包含的图片拼接成时间线;在判断结果为否的情况下,将利用运动数据填充预定模块之后的视频与运动数据中包含的图片拼接成时间线,预览或生成目标视频。
例如,可以将视频中所有的内容,拼装成为时间线上的一个个项,每个项的属性具有默认值,与之后不同的时间点上的不同值,以及每个时间点到下一个时间带你变化的插值函数。例如,一个头像,由一个圆组成,位置位于视频左上角的(10,10)的位置,时间为0时的透明度为0;时间为1000毫秒时透明度为1。利用领域特定语言可以描述为:“position”:[{“value”;“top|left”}]“offsetX”:[{“value”;“10”}]“offsetY”:[{“value”;“10”}]“alpha”:[{“value”:“0”},{“value”:“1”,“time”:1000}]}。其中,时间线上的项都有可供绘制的内容来源,对于文字与形状,就是DSL文件中描述的内容,对于视频与图片,可指定uri,相对于uri会包含在DSL文件同级目录中,绝对路径一般会取网络素材,下载缓冲后使用。
通过本发明实施例提供的基于非线性视频编辑的视频生成方法非线性编辑分为两部分,一部分是通过视频、图片与音频拼接成一个时间线,但是无法对内容进行修改;另一部分是通过每一帧内容的回调自行绘制内容的自定义特效器,在此回调中,可以通过openGL与客户端平台(Android或iOS)的方法绘制不同的内容。在客户端获取到预定模板文件后进行解压,通过预定模板内的槽将一同下发的运动数据填充,生成供非线性视频编辑工具使用的数据结构与自定义特效器,前者用于用户视频与图片展示,后者用于数据与设计师设计样式渲染,最终生成含有用户运动数据和预设模板样式的运动记录短片。
实施例2
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成方法,图3是根据本发明实施例的基于非线性视频编辑的视频生成方法的优选的流程图,包括:
步骤S302,确定用于生成目标视频的运动数据。
其中,确定用于生成目标视频的运动数据可以包括:通过预定规则对存储的用户的所有运动数据进行筛选,得到运动数据,其中,预定规则是根据预定模板的类型配置,并用于对用户的所有运动数据进行筛选的筛选条件。
步骤S304,获取用于生成目标视频的预定模板。
优选的,在确定用于描述目标视频对应的视频模板的领域特定语言DSL之后,该基于非线性视频编辑的视频生成方法还包括:利用预定插件将预定模板对应的文件的属性转换为领域特定语言DSL对应的属性。
其中,在本发明实施例中对上述预定插件的类型不做具体限定,可以为:AfterEffects插件,Principle插件等。在预定插件为After Effects插件的情况下,可以通过开发的After Effects(即,AE)插件,将设计文件的属性状态直接导出为一个DSL模板描述文件,将对应的素材导出。通过AE的ExtendScript编写插件,插件会在AE中创建一个面板,同时可以获取到设计师当前选择的内容,对内容项做标记:内容项的某属性是否可替换,替换的槽是什么,默认值是什么,如横向缩放值为期运动排名;文本的对齐方式,项布局之间的依赖关系,如一个文本项在另一个文本项的右侧12像素;将某些项根据槽的值与固定值组合为组合项,在槽的值不同时展示不同的内容。导出时将做过标记项的所有属性导出为上文描述的DSL,并将其AE中可见性设置为不可见,剩下不需要进行数据替换的内容,导出为视频,直接作为底图(底片)使用。
图4是根据本发明实施例的基于服务端的基于非线性视频编辑的视频生成方法的流程图。如图4所示,服务端可以调取出存储的用户的所有运动数据;然后根据筛选规则从配置中读取到筛选条件;再根据筛选条件进行数据筛选得到运动数据,基于筛选出的运动数据的类型在配置中获取对应的预定模板;将预定目标以及运动数据返回到客户端。
步骤S306,将运动数据和预定模板发送至客户端,其中,客户端在非线性视频编辑工具中,基于预定模板中记录的模板声明,利用运动数据填充预定模板,以生成目标视频。
在该实施例中,可以确定用于生成目标视频的运动数据,并获取用于生成目标视频的预定模板;再将运动数据和预定模板发送至客户端,其中,客户端在非线性视频编辑工具中,基于预定模板中记录的模板声明,利用运动数据填充预定模板,以生成目标视频。相对于相关技术中,要基于用户的运动数据做出视频会耗费大量的编辑时间,效率较低的弊端,通过本发明实施例可以利用筛选得到的运动数据以及从服务端获取的预定模板生成目标视频,实现了可以将用户的运动数据视频化的目的,达到了提高基于运动数据的视频生成的效率的技术效果,进而解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
在步骤S304中,获取用于生成目标视频的预定模板可以包括:确定用于描述目标视频对应的视频模板的领域特定语言DSL以及视频模板对应的素材,其中,领域特定语言DSL是基于视频模板的展示形式定义的。
在步骤S306中,模板声明用于记录以下至少之一:预定模板生成的视频的时长,预定模板的槽,其中,预定模板的槽为预定模板的可修改项,在领域特定语言DSL的头部声明。
在步骤S306中,将运动数据和预定模板发送至客户端之后,客户端的非线性视频编辑工具会基于客户端接收到的运动数据以及预定模板执行如图5所示的操作,以进行视频的预览或视频的生成。
其中,图5是根据本发明实施例的非线性视频编辑工具预览或生成视频的流程图,如图5所示,将每种属性根据所给出的关键帧相邻两个组成时间区间开始预览或生成视频,开始预览或生成视频;根据时间线生成每一帧画面,判断是否到达最后一帧,在判断结果为是的情况下,结束,反之,判断当前时间是否在特效器时间范围内,在判断结果为是的情况下,回调中遍历绘制项,反之,返回根据时间线生成每一帧画面;判断当前帧是否在该项应当绘制的时间范围内,在判断结果为是的情况下,通过帧时间在区间找到对应数据,计算插值;反之,返回回调中遍历绘制项;在计算插值后,改变内容对应的值;判断当前帧是否为有效帧,在判断结果为是的情况下,获取当前项的绘制内容;反之,更新当前项的绘制内容,再获取当前项的绘制内容;根据缩放、旋、旋转、位移计算出该绘制项的变换矩阵,利用该变换矩阵与插值计算出的其他属性将当前项绘制在画面上,并返回回调中遍历绘制项。
实施例3
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成装置,图6是根据本发明实施例的基于非线性视频编辑的视频生成装置的示意图,如图6所示,该基于非线性视频编辑的视频生成装置包括:第一获取单元61,第二获取单元63以及生成单元65。下面对该基于非线性视频编辑的视频生成装置进行详细说明。
第一获取单元61,用于从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据。
第二获取单元63,用于从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的。
生成单元65,用于基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板,以生成运动数据对应的目标视频。
在上述实施例中,可以通过第一获取单元从服务端获取用户的运动数据,其中,运动数据为服务端通过预定规则对存储于服务端的所有运动数据进行筛选后得到的数据;然后利用第二获取单元从服务端获取预定模板,其中,预定模板包括:领域特定语言DSL描述的视频模板,与视频模板对应的素材,领域特定语言DSL是基于视频模板的展示形式确定的;并利用生成单元基于预定模板中记录的模板声明,在非线性视频编辑工具中,利用用户的运动数据填充预定模板,以生成运动数据对应的目标视频。相对于相关技术中,要基于用户的运动数据做出视频会耗费大量的编辑时间,效率较低的弊端,通过本发明实施例可以利用筛选得到的运动数据以及从服务端获取的预定模板生成目标视频,实现了可以将用户的运动数据视频化的目的,达到了提高基于运动数据的视频生成的效率的技术效果,进而解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
作为一种可选的实施例,预定规则为服务端根据预定模板的类型配置,并用于对用户的所有运动数据进行筛选的筛选条件。
作为一种可选的实施例,筛选条件依据以下至少之一确定:运动时间范围,运动类型,运动过程中的图片,运动过程中的视频,运动日志,运动地点。
作为一种可选的实施例,模板声明用于记录以下至少之一:预定模板生成的视频的时长,预定模板的槽,其中,预定模板的槽为预定模板的可修改项。
作为一种可选的实施例,生成单元包括:验证模块,用于对预定模板进行验证;第一填充模块,用于在验证成功的情况下,利用运动数据填充预定模板的槽,得到运动数据对应的原始视频;提示模块,用于在验证失败的情况下,提示预定模板验证失败。
作为一种可选的实施例,生成单元包括:第一确定模块,用于确定存在需要下载的资源,其中,资源为生成目标视频所需的素材;第二填充模块,用于利用素材对原始视频进行填充,得到目标视频。
作为一种可选的实施例,生成单元还包括:渲染模块,用于对利用素材对原始视频进行填充后得到的视频进行渲染,得到目标视频。
实施例4
根据本发明实施例的另外一个方面,还提供了一种基于非线性视频编辑的视频生成装置,图7是根据本发明实施例的可选的基于非线性视频编辑的视频生成装置的示意图,如图7所示,该基于非线性视频编辑的视频生成装置包括:确定单元71,第三获取单元73以及发送单元75。下面对基于非线性视频编辑的视频生成装置进行详细说明。
确定单元71,用于确定用于生成目标视频的运动数据。
第三获取单元73,用于获取用于生成目标视频的预定模板。
发送单元75,用于将运动数据和预定模板发送至客户端,其中,客户端在非线性视频编辑工具中,基于预定模板中记录的模板声明,利用运动数据填充预定模板,以生成目标视频。
在该实施例中,可以利用确定单元确定用于生成目标视频的运动数据;并利用第三获取单元获取用于生成目标视频的预定模板;以及利用发送单元将运动数据和预定模板发送至客户端,其中,客户端在非线性视频编辑工具中,基于预定模板中记录的模板声明,利用运动数据填充预定模板,以生成目标视频。相对于相关技术中,要基于用户的运动数据做出视频会耗费大量的编辑时间,效率较低的弊端,通过本发明实施例可以利用筛选得到的运动数据以及从服务端获取的预定模板生成目标视频,实现了可以将用户的运动数据视频化的目的,达到了提高基于运动数据的视频生成的效率的技术效果,进而解决了相关技术中根据用户的运动数据生成视频的效率较低的技术问题。
作为一种可选的实施例,确定单元包括:筛选模块,用于通过预定规则对存储的用户的所有运动数据进行筛选,得到运动数据,其中,预定规则是根据预定模板的类型配置,并用于对用户的所有运动数据进行筛选的筛选条件。
作为一种可选的实施例,第三获取单元包括:第二确定模块,用于确定用于描述目标视频对应的视频模板的领域特定语言DSL以及视频模板对应的素材,其中,领域特定语言DSL是基于视频模板的展示形式定义的。
作为一种可选的实施例,模板声明用于记录以下至少之一:预定模板生成的视频的时长,预定模板的槽,其中,预定模板的槽为预定模板的可修改项,在领域特定语言DSL的头部声明。
作为一种可选的实施例,该基于非线性视频编辑的视频生成装置还包括:转换单元,用于在确定用于描述目标视频对应的视频模板的领域特定语言DSL之后,利用预定插件将预定模板对应的文件的属性转换为领域特定语言DSL对应的属性。
实施例5
根据本发明实施例的另外一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,程序执行上述中任意一项的基于非线性视频编辑的视频生成方法。
实施例6
根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的基于非线性视频编辑的视频生成方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种基于非线性视频编辑的视频生成方法,其特征在于,包括:
从服务端获取用户的运动数据,其中,所述运动数据为所述服务端通过预定规则对存储于所述服务端的所有运动数据进行筛选后得到的数据;
从所述服务端获取预定模板,其中,所述预定模板包括:领域特定语言DSL描述的视频模板,与所述视频模板对应的素材,所述领域特定语言DSL是基于所述视频模板的展示形式确定的;
基于所述预定模板中记录的模板声明,在非线性视频编辑工具中,利用所述用户的运动数据填充所述预定模板,以生成所述运动数据对应的目标视频;
其中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板包括:
对所述预定模板进行验证;
在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;
在验证失败的情况下,提示所述预定模板验证失败。
2.根据权利要求1所述的方法,其特征在于,所述预定规则为所述服务端根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
3.根据权利要求2所述的方法,其特征在于,所述筛选条件依据以下至少之一确定:运动时间范围,运动类型,运动过程中的图片,运动过程中的视频,运动日志,运动地点。
4.根据权利要求1所述的方法,其特征在于,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项。
5.根据权利要求1所述的方法,其特征在于,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述运动数据对应的目标视频包括:
确定存在需要下载的资源,其中,所述资源为生成所述目标视频所需的素材;
利用所述素材对所述原始视频进行填充,得到所述目标视频。
6.根据权利要求5所述的方法,其特征在于,生成所述运动数据对应的目标视频还包括:
对利用所述素材对所述原始视频进行填充后得到的视频进行渲染,得到所述目标视频。
7.一种基于非线性视频编辑的视频生成方法,其特征在于,包括:
确定用于生成目标视频的运动数据;
获取用于生成所述目标视频的预定模板;
将所述运动数据和所述预定模板发送至客户端,其中,所述客户端在非线性视频编辑工具中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述目标视频;
其中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板包括:对所述预定模板进行验证;在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;在验证失败的情况下,提示所述预定模板验证失败;
其中,获取用于生成所述目标视频的预定模板包括:确定用于描述所述目标视频对应的视频模板的领域特定语言DSL以及所述视频模板对应的素材,其中,所述领域特定语言DSL是基于所述视频模板的展示形式定义的。
8.根据权利要求7所述的方法,其特征在于,确定用于生成目标视频的运动数据包括:
通过预定规则对存储的用户的所有运动数据进行筛选,得到所述运动数据,其中,所述预定规则是根据所述预定模板的类型配置,并用于对所述用户的所有运动数据进行筛选的筛选条件。
9.根据权利要求7所述的方法,其特征在于,所述模板声明用于记录以下至少之一:所述预定模板生成的视频的时长,所述预定模板的槽,其中,所述预定模板的槽为所述预定模板的可修改项,在所述领域特定语言DSL的头部声明。
10.根据权利要求7所述的方法,其特征在于,在确定用于描述所述目标视频对应的视频模板的领域特定语言DSL之后,还包括:利用预定插件将所述预定模板对应的文件的属性转换为所述领域特定语言DSL对应的属性。
11.一种基于非线性视频编辑的视频生成装置,其特征在于,包括:
第一获取单元,用于从服务端获取用户的运动数据,其中,所述运动数据为所述服务端通过预定规则对存储于所述服务端的所有运动数据进行筛选后得到的数据;
第二获取单元,用于从所述服务端获取预定模板,其中,所述预定模板包括:领域特定语言DSL描述的视频模板,与所述视频模板对应的素材,所述领域特定语言DSL是基于所述视频模板的展示形式确定的;
生成单元,用于基于所述预定模板中记录的模板声明,在非线性视频编辑工具中,利用所述用户的运动数据填充所述预定模板,以生成所述运动数据对应的目标视频;
其中,所述生成单元包括:验证模块,用于对所述预定模板进行验证;第一填充模块,用于在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;提示模块,用于在验证失败的情况下,提示所述预定模板验证失败。
12.一种基于非线性视频编辑的视频生成装置,其特征在于,包括:
确定单元,用于确定用于生成目标视频的运动数据;
第三获取单元,用于获取用于生成所述目标视频的预定模板;
发送单元,用于将所述运动数据和所述预定模板发送至客户端,其中,所述客户端在非线性视频编辑工具中,基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板,以生成所述目标视频;基于所述预定模板中记录的模板声明,利用所述运动数据填充所述预定模板包括:对所述预定模板进行验证;在验证成功的情况下,利用所述运动数据填充所述预定模板的槽,得到所述运动数据对应的原始视频;在验证失败的情况下,提示所述预定模板验证失败;
其中,所述第三获取单元包括:第二确定模块,用于确定用于描述所述目标视频对应的视频模板的领域特定语言DSL以及所述视频模板对应的素材,其中,所述领域特定语言DSL是基于所述视频模板的展示形式定义的。
13.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序被处理器执行以实现权利要求1至10中任意一项所述的基于非线性视频编辑的视频生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910356644.7A CN110198420B (zh) | 2019-04-29 | 2019-04-29 | 基于非线性视频编辑的视频生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910356644.7A CN110198420B (zh) | 2019-04-29 | 2019-04-29 | 基于非线性视频编辑的视频生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110198420A CN110198420A (zh) | 2019-09-03 |
CN110198420B true CN110198420B (zh) | 2022-06-10 |
Family
ID=67752225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910356644.7A Active CN110198420B (zh) | 2019-04-29 | 2019-04-29 | 基于非线性视频编辑的视频生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110198420B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110856038B (zh) * | 2019-11-25 | 2022-06-03 | 新华智云科技有限公司 | 视频生成方法及***、存储介质 |
CN111654645A (zh) * | 2020-05-27 | 2020-09-11 | 上海卓越睿新数码科技有限公司 | 一种标准化的课程视频展示效果设计方法 |
CN113556576B (zh) * | 2021-07-21 | 2024-03-19 | 北京达佳互联信息技术有限公司 | 视频生成方法及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1474408A (zh) * | 2002-08-08 | 2004-02-11 | ���ǵ�����ʽ���� | 面向任务的非线性超视频编辑方法及其装置 |
CN103167222A (zh) * | 2013-03-29 | 2013-06-19 | 北京中科大洋科技发展股份有限公司 | 一种非线性云编辑*** |
CN104349175A (zh) * | 2014-08-18 | 2015-02-11 | 周敏燕 | 一种基于手机终端的视频制作***及方法 |
CN104780439A (zh) * | 2014-01-15 | 2015-07-15 | 腾讯科技(深圳)有限公司 | 视频的处理方法及装置 |
CN105426444A (zh) * | 2015-11-06 | 2016-03-23 | 河海大学常州校区 | 一种基于视频处理技术的乒乓球竞赛信息统计*** |
WO2017051793A1 (ja) * | 2015-09-25 | 2017-03-30 | 株式会社グロウ・ムービージャパン | 映像コンテンツ自動生成システム |
CN108900897A (zh) * | 2018-07-09 | 2018-11-27 | 腾讯科技(深圳)有限公司 | 一种多媒体数据处理方法、装置以及相关设备 |
CN109168026A (zh) * | 2018-10-25 | 2019-01-08 | 北京字节跳动网络技术有限公司 | 即时视频显示方法、装置、终端设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105740047A (zh) * | 2016-01-26 | 2016-07-06 | 中标软件有限公司 | 一种基于云计算的虚拟机模板管理***和方法 |
CN106325856B (zh) * | 2016-08-10 | 2019-08-20 | 杭州玳数科技有限公司 | 一种实现Elasticsearch Dsl规则可视化编辑和数据展现的方法与*** |
CN108694737B (zh) * | 2018-05-14 | 2019-06-14 | 星视麒(北京)科技有限公司 | 制作图像的方法和装置 |
CN109062952B (zh) * | 2018-06-22 | 2022-06-03 | 北京奇艺世纪科技有限公司 | 一种数据查询方法、装置及电子设备 |
-
2019
- 2019-04-29 CN CN201910356644.7A patent/CN110198420B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1474408A (zh) * | 2002-08-08 | 2004-02-11 | ���ǵ�����ʽ���� | 面向任务的非线性超视频编辑方法及其装置 |
CN103167222A (zh) * | 2013-03-29 | 2013-06-19 | 北京中科大洋科技发展股份有限公司 | 一种非线性云编辑*** |
CN104780439A (zh) * | 2014-01-15 | 2015-07-15 | 腾讯科技(深圳)有限公司 | 视频的处理方法及装置 |
CN104349175A (zh) * | 2014-08-18 | 2015-02-11 | 周敏燕 | 一种基于手机终端的视频制作***及方法 |
WO2017051793A1 (ja) * | 2015-09-25 | 2017-03-30 | 株式会社グロウ・ムービージャパン | 映像コンテンツ自動生成システム |
CN105426444A (zh) * | 2015-11-06 | 2016-03-23 | 河海大学常州校区 | 一种基于视频处理技术的乒乓球竞赛信息统计*** |
CN108900897A (zh) * | 2018-07-09 | 2018-11-27 | 腾讯科技(深圳)有限公司 | 一种多媒体数据处理方法、装置以及相关设备 |
CN109168026A (zh) * | 2018-10-25 | 2019-01-08 | 北京字节跳动网络技术有限公司 | 即时视频显示方法、装置、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110198420A (zh) | 2019-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110198420B (zh) | 基于非线性视频编辑的视频生成方法及装置 | |
US6792575B1 (en) | Automated processing and delivery of media to web servers | |
CN111552473A (zh) | 一种应用程序的处理方法、装置及设备 | |
CN111899155B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN108492338B (zh) | 动画文件的压缩方法、装置、存储介质和电子装置 | |
TW202004674A (zh) | 在3d模型上展示豐富文字的方法、裝置及設備 | |
CN113411664B (zh) | 基于子应用的视频处理方法、装置和计算机设备 | |
CN108038892A (zh) | 表情包制作方法、装置、电子设备和计算机可读存储介质 | |
CN106156306A (zh) | 一种模板渲染方法和装置 | |
CN111581564B (zh) | 一种应用Canvas实现的网页同步交流方法 | |
CN104965813B (zh) | 文字素材的处理方法和装置 | |
CN105045587A (zh) | 一种图片展示方法及装置 | |
CN109634610B (zh) | 一种界面标注数据的生成方法及装置 | |
CN113254822B (zh) | 一种对象编辑方法、装置、电子设备及存储介质 | |
CN110288678A (zh) | 动态照片的生成方法、装置、计算机设备和存储介质 | |
KR101352203B1 (ko) | 모바일용 동영상 편집도구의 이펙트 설정을 위한 플러그인의 배포방법 | |
CN104991950A (zh) | 一种图片生成方法、显示方法及相应装置 | |
CN109862295B (zh) | Gif生成方法、装置、计算机设备及存储介质 | |
CN116527994A (zh) | 视频的生成方法及装置、电子设备 | |
KR100481588B1 (ko) | 영상, 오디오, 자막 및 메시지 등을 포함하는 실물형 2d 동영상 정보물 제작 및 재생 방법 | |
CN108519962A (zh) | 一种应用于安卓***的字体显示方法、装置和终端设备 | |
CN113343027A (zh) | 交互视频编辑、交互视频展示方法及装置 | |
CN114747228A (zh) | 图像纪念物生成 | |
CN106934847B (zh) | 图案生成方法及装置 | |
Isenberg et al. | Breaking the pixel barrier |
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 |