CN111488244A - 一种编辑异常恢复方法、装置、电子设备及存储介质 - Google Patents
一种编辑异常恢复方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111488244A CN111488244A CN202010268605.4A CN202010268605A CN111488244A CN 111488244 A CN111488244 A CN 111488244A CN 202010268605 A CN202010268605 A CN 202010268605A CN 111488244 A CN111488244 A CN 111488244A
- Authority
- CN
- China
- Prior art keywords
- video
- information
- related data
- editing page
- resource object
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000011084 recovery Methods 0.000 title claims abstract description 32
- 230000009466 transformation Effects 0.000 claims abstract description 41
- 230000007704 transition Effects 0.000 claims description 82
- 230000000694 effects Effects 0.000 claims description 38
- 230000001960 triggered effect Effects 0.000 claims description 26
- 230000009191 jumping Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 8
- 238000009877 rendering Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 15
- 230000008859 change Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000005856 abnormality Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请涉及一种编辑异常恢复方法、装置、电子设备及存储介质,属于计算机技术领域。该方法包括:当视频编辑应用重启时,检测草稿文件中是否存储有视频编辑应用在上一次退出时所保存的相关数据;在为是时,根据草稿文件获取上一次退出时保存的相关数据;根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对资源对象中的视频的变换操作。通过在视频编辑应用重启时,若检测到草稿文件中存储有视频编辑应用在上一次退出时所保存的相关数据,则根据相关数据在视频编辑页面中恢复上一次退出时的资源对象以及对资源对象中的视频的变换操作,使得能够快速的恢复到崩溃前的编辑状态,缩短了编辑时间,提升了用户体验。
Description
技术领域
本申请属于计算机技术领域,具体涉及一种编辑异常恢复方法、装置、电子设备及存储介质。
背景技术
随着移动终端功能的不断完善,应用在移动终端上的各种应用程序也日益增多,其中不乏一些视频编辑应用程序(软件),如剪映。在移动端进行视频编辑过程中受限于计算资源的限制,较容易出现因为系统计算资源(内存,CPU(Central Processing Unit,中央处理器),显卡,SD存储卡(Secure Digital Memory Card)等)的限制而导致编辑失败崩溃,这样会导致已经编辑的视频丢失,用户需要重新编辑,会极大的影响用户的使用体验。
发明内容
鉴于此,本申请的目的在于提供一种编辑异常恢复方法、装置、电子设备及存储介质,以改善目前在进行视频编辑过程中,视频编辑异常退出时导致已经编辑的视频丢失的问题。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供了一种编辑异常恢复方法,包括:当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作;在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据;根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。本申请实施例中,通过在视频编辑应用重启时,若检测到草稿文件中存储有视频编辑应用在上一次退出时所保存的相关数据(包括资源对象以及对资源对象中的视频的变换操作)则根据该相关数据在视频编辑页面中恢复上一次退出时的资源对象以及对资源对象中的视频的变换操作,使得能够快速的恢复到崩溃前的编辑状态,以便继续进行下一步操作,极大的缩短编辑时间,提升用户体验。
结合第一方面实施例的一种可能的实施方式,根据所述草稿文件获取上一次退出时保存的所述相关数据,包括:采用字符串的形式将所述草稿文件中的内容读取到内存中;将所述字符串反序列化为草稿对象,得到上一次退出时保存的所述相关数据。本申请实施例中,在获取草稿文件中的数据时,先采用字符串的形式将草稿文件中的内容读取到内存中,以保证数据在传递过程中的完整性和便捷性,然后再将字符串反序列化为草稿对象,即可快速的得到上一次退出时保存的相关数据。
结合第一方面实施例的一种可能的实施方式,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作,包括:从所述相关数据中的视频列表目录中获取视频列表信息,所述视频列表信息包括:至少一个视频,每个视频包括:视频基本信息、视频变速信息和视频镜像变换信息;针对每个视频,将该视频传输给解码器进行解码播放,并呈现在所述视频编辑页面的播放区域,并提取出该视频的序列帧图,按顺序排列显示在所述视频编辑页面的帧图预览区域;其中,播放时,根据该视频对应的视频基本信息、视频变速信息对应的速率以及视频镜像变换信息对应的镜像效果进行播放;当触发所述视频编辑页面中的变速按钮时,跳转至变速编辑页面,并将所述变速编辑页面中的变速刻度尺的数值调整为当前播放视频的变速值。本申请实施例中,在对视频进行恢复时,从相关数据中的视频列表目录中获取视频列表信息,并将视频列表信息中的每个视频传输给解码器进行解码播放,播放时,根据每个视频对应的视频基本信息、视频变速信息对应的速率以及视频镜像变换信息对应的镜像效果进行播放,并取出视频列表中每个视频的序列帧图,按顺序显示在视频编辑页面的帧图预览区域,使得不仅可以快速恢复视频,同时对视频的变速、镜像、排序等变换操作也会一并恢复,同时,当触发视频编辑页面中的变速按钮时,跳转至变速编辑页面,并将变速编辑页面中的变速刻度尺的数值调整为当前播放视频的变速值,以便于用户可以很直观地获悉当前播放视频的变速值。
结合第一方面实施例的一种可能的实施方式,所述资源对象还包括音频,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:从所述相关数据中的音频列表目录中获取音频列表信息,所述音频列表信息包括至少一个音频信息,每个音频信息包括开始时长和结束时长;针对每个音频信息,将该音频信息传输给所述解码器进行解码播放;当触发所述视频编辑页面中的声音按钮时,跳转至音频编辑页面,并根据该音频信息中的开始时长和结束时长绘制音频蒙层并显示,所述音频蒙层的长度与所述开始时长到所述结束时长的时长对应。本申请实施例中,从相关数据中的音频列表目录中获取音频信息,并将音频信息传输给解码器进行解码播放,即可快速的完成导入的编辑音频的恢复,同时,当触发视频编辑页面中的声音按钮时,跳转至音频编辑页面,并根据该音频信息中的开始时长和结束时长绘制音频蒙层并显示,以便于用户可以很直观地获悉当前导入的音频的开始时长和结束时长。
结合第一方面实施例的一种可能的实施方式,所述资源对象还包括转场,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:从所述相关数据中的转场目录中获取转场信息,并将所述转场信息传输给解码器,以使所述解码器根据所述转场信息确定所关联的视频id,并在播放所述视频id对应的视频时,根据所述转场信息将所述视频id对应的视频的指定帧图做转场变换,使其呈现出转场效果;当触发所述视频编辑页面中的编辑按钮时,跳转至转场编辑页面,并根据所述转场信息将所述指定帧图替换为转场图标,当所述转场图标被触发时,弹出转场效果选择框。本申请实施例中,从相关数据中的转场目录中获取转场信息,并将转场信息传输给解码器,以使解码器根据转场信息确定所关联的视频id,并在播放该视频id对应的视频时,根据转场信息将视频id对应的视频的指定帧图做转场变换,使其呈现出转场效果,即可快速的完成转场的恢复,同时,当触发视频编辑页面中的编辑按钮时,跳转至转场编辑页面,并根据转场信息将指定帧图替换为转场图标,以便于用户获悉是对哪一幅帧图做了转场变换。
结合第一方面实施例的一种可能的实施方式,所述资源对象还包括文字,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:从所述相关数据中的文字列表目录中获取文字信息;将所述文字信息传输给所述解码器,以使所述解码器将所述文字信息对应的文字绘制到播放区域;当触发所述视频编辑页面中的文字按钮时,跳转至文字编辑页面,并根据所述文字信息中的开始时长和持续时间绘制文字蒙层并显示,所述文字蒙层的长度与所述持续时间对应。本申请实施例中,从相关数据中的文字列表目录中获取文字信息并将文字信息传输给解码器,使得在播放到文字开始位置时,将文字信息对应的文字绘制到播放区域,使得播放的视频可以显示文字,同时当触发视频编辑页面中的文字按钮时,跳转至文字编辑页面,并根据文字信息中的开始时长和持续时间绘制文字蒙层并显示,以便于用户可以很直观地获悉当前导入的文字的开始时长和持续时间。
结合第一方面实施例的一种可能的实施方式,所述资源对象还包括滤镜,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:从所述相关数据中的滤镜目录中获取滤镜信息;将所述滤镜信息传输给所述解码器,以使所述解码器根据所述滤镜信息获得滤镜关联的视频id,当解码播放到所述视频id对应的视频时,将所述滤镜信息对应的滤镜效果渲染到该视频上,使其呈现出镜像效果;当触发所述视频编辑页面中的滤镜按钮时,跳转至滤镜编辑页面,并根据所述滤镜信息将当前已选的滤镜效果标记为选中状态。本申请实施例中,从相关数据中的滤镜目录中获取滤镜信息,并将滤镜信息传输给解码器,以便根据滤镜信息获得滤镜关联的视频id,当解码播放到视频id对应的视频时,将滤镜信息对应的滤镜效果渲染到该视频上,使其呈现出镜像效果,同时,当触发视频编辑页面中的滤镜按钮时,跳转至滤镜编辑页面,并根据滤镜信息将当前已选的滤镜效果标记为选中状态,以便于用户获悉当前所选的滤镜效果。
第二方面,本申请实施例还提供了一种编辑异常恢复装置,包括:检测模块、获取模块以及恢复模块;检测模块,用于当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作;获取模块,用于在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据;恢复模块,用于根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
第三方面,本申请实施例还提供了一种电子设备,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储程序;所述处理器,用于调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出了本申请实施例提供的一种编辑异常恢复方法的流程示意图。
图2示出了本申请实施例提供的一种恢复后的视频编辑页面的示意图。
图3示出了本申请实施例提供的一种跳转后的音乐编辑页面的示意图。
图4示出了本申请实施例提供的一种跳转后的转场编辑页面的示意图。
图5示出了本申请实施例提供的一种跳转后的滤镜编辑页面的示意图。
图6示出了本申请实施例提供的一种跳转后的文字编辑页面的示意图。
图7示出了本申请实施例提供的又一种编辑异常恢复方法的流程示意图。
图8示出了本申请实施例提供的一种编辑异常恢复装置的流程示意图。
图9示出了本申请实施例提供的一种电子设备的流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
鉴于目前在视频编辑过程中,当视频编辑应用(软件)异常退出时,导致已经编辑的视频丢失,使得用户需要重新编辑,会极大的影响用户的使用体验的问题,本申请实施例提供的编辑异常恢复方法能够快速的恢复到崩溃前的编辑状态,以便继续进行下一步操作,极大的缩短编辑时间,提升用户体验。下面将对本申请实施例提供的编辑异常恢复方法进行说明,请参阅图1,为本申请实施例提供的一种编辑异常恢复方法,下面将结合图1对其所包含的步骤进行说明。
步骤S101:当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据。
当视频编辑应用软件异常退出,重新启动时,检测本地草稿文件中是否存储有视频编辑应用在上一次退出时所保存的相关数据,若存在则执行步骤S102,若不存在,则正常启动,进入该视频编辑应用软件的默认页面。
其中,为了能够确保视频编辑应用软件异常退出重新启动时能恢复到编辑异常之前的状态,需要将编辑过程中产生的数据抽象为草稿并保存,同时在发生异常的情况下,能根据草稿数据准确还原编辑现场。因此,在检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据之前,该方法还包括:实时将视频编辑应用在编辑过程中所涉及的资源对象以及对资源对象中的视频的变换操作等相关信息保存到草稿文件中,其中,相关数据包括资源对象以及对资源对象中的视频的变换操作。作为一种实施方式,可以采用序列化的形式将当前已编辑的相关信息序列化成字符串,保存在文件中,并以当前时间命名,如命名为当前时间戳.draft,以便后续根据时间的先后顺序找到最新的草稿文件,同时采用序列化的形式保存草稿数据,方便其在不同的进程中进行传输和识别,以保证数据在传递过程中的完整性和便捷性。通过将编辑过程中的数据抽象为草稿并保存,能避免相关数据丢失,使得APP异常退出重启时,能基于保存的草稿数据快速恢复到异常前的编辑状态,以进一步改善用户体验。
其中,在视频编辑过程中,比较常用到的方法包括:(1)多段视频合成、(2)视频间插入转场、(3)视频区间裁剪、(4)录音、(5)插入音乐、(6)插入文字、(7)添加滤镜、(8)对视频进行变速、(9)对视频做镜像、(10)对视频进行排序。上述常用的10种编辑方法操作的实体包括:视频、音频(包括音乐和录音)、图片、文字、滤镜五种。其中,滤镜是一种压缩包,包含用于显卡渲染的脚本语言和资源,用于实时的对视频的图片帧进行变换。因此,在视频编辑过程中,需要对以上编辑过程中的产生的数据抽象为草稿并保存。接下来将对编辑过程所产生草稿数据的抽象与保存进行说明。
其中,草稿数据结构的抽象:
为了能够恢复编辑现场,本申请设计的草稿遵循两条主线:
对操作的资源对象的描述,其中,资源对象包括视频以及图片、音频(包括录音和音乐),文字、转场、滤镜等。
对资源对象中的视频的变换操作的描述,其中,变换操作包括镜像、变速、排序等。
可选地,将用于描述草稿的对象命名为Draft,它包含的主要数据成员列举如下:
List<VideoItem>videoItems;编辑导入的视频列表目录;
List<MusicEffectEntity>musicItems;编辑插入的音乐列表目录;
List<MusicEffectEntity>recordItems;编辑插入的录音列表目录;
List<FilterEntity>filterItems;编辑用到的滤镜目录
List<TransitionEntity>transitionItems;编辑用到的转场目录;
List<StickerEntity>stickerItems;编辑用到的文字列表目录。
其中,1)VideoItem
视频列表目录包括视频列表信息,其中,videoItem代表了一个视频的数据,它的主要结构描述如下:
String id;视频唯一id;
String filePath;视频地址;
int durationTime;视频时长信息;
int selectedStartMs;视频区间裁剪时选择的开始时间;
int selectedDurationMs;视频区间裁剪时选择的时长;
float videoVolume=1.0F;视频音量;
int videoWidth;视频的宽度;
int videoHeight;视频的高度;
SpeedEntity speedEntity;视频播放速率;
FrameEffectEntity frameEffectEntity;视频镜像变换信息。
2)MusicEffectEntity
音频列表目录,包括音频列表信息,音频列表信息包括至少一个音频信息,该音频信息可以是音乐(musicItem代表音乐)或者录音(recordItem代表录音),音频信息的主要结构描述如下:
String id;音频的id;
String filePath;音频的地址;
float volume=1.0F;音频的音量;
int selectedStartMs;音频选择的开始时间;
int selectedDurationMs;音频选择的时长;
int repeat;音频是否循环播放。
3)FilterEntity
滤镜目录包括滤镜信息,filterItem代表一条滤镜效果,它与视频通过videoid直接关联,播放器会根据关联的视频id,找到滤镜并在播放视频时,同步渲染滤镜效果,目前用到的滤镜效果都内置在APK(Android applicationpackage,Android应用程序包)中,可以通过路径和名称索引得到,滤镜信息的主要结构描述如下:
String id;滤镜的id;
@IdRes int icon;滤镜的图标;
boolean isSelected=false;滤镜是否选中;
String path;滤镜的路径;
String name;滤镜名称;
float strength;滤镜强度;
String videoId="";滤镜关联的视频id;
4)TransitionEntity
转场目录包括转场信息,transitionItem代表一个转场效果,它通过videoid与视频关联,它实际是一份GLSL(OpenGL Shading Language,OpenGL着色语言)脚本,转场内置在APK中,可以通过路径和名称索引得到,转场信息的主要结构描述如下:
String id;转场id;
int transitionTime;转场开始时间;
int duration;转场持续时长;
Transitions transitions=Transitions.None;转场类型,目前APP内一共用到7种常见转场,每种转场都用一份GLSL脚本描述语言来表示;
String videoId="0";关联的视频的id;
5)StickerEntity
文字列表目录包括文字信息,stickerItem代表插入的文字,文字信息的主要结构描述如下:
int id;文字id;
float[]matrixArray;文字变换信息,包括平移,缩放;
Gravity gravity;文字对齐方式;
int selectedStartMs;文字的开始时间;
int selectedDurationMs;文字的时长;
int containerWidth;文字边框的宽度;
int containerHeight;文字边框的高度;
int maxLines;文字行数限制;
int maxWordsPerLine;文字字数限制;
int textColor;文字颜色;
int shadowDx;文字横向阴影;
int shadowDy;文字纵向阴影;
int shadowColor;文字阴影颜色;
float textSize;文字大小;
String text;文字内容;
String textFont;文字字体路径,默认使用三种字体内置在APK中。
至此抽象了编辑用到的资源对象以及对资源对象中视频的变换操作,分别对应如下:
视频–videoItem;
图片–VideoItem,图片在插入后,会被转化为4秒长的视频;
音乐,录音–MusicEffectEntity;
文字–StickerEntity;
滤镜–filterEntity;
转场–TransitionEntity;
镜像–VideoItem中的属性FrameEffectEntity,主要分为水平和垂直镜像;
变速–VideoItem中的属性SpeedEntity,取值从0–1;
排序–通过调整视频列表中videoItem的顺序来实现。
其中,需要说明的是,不能将上述示例的结构,如每个视频的结构、音频信息的结构、文字信息的结构、转场信息的结构、滤镜信息的结构等理解成是对本申请的限制,其保存的内容可以在此基础上根据需要进行增加或减少。
当进行视频编辑操作时,会在内存中创建草稿对象Draft,并修改Draft中的数据具体修改描述如下:
1)导入视频信息,将在Draft中修改List<VideoItem>添加多条VideoItem;
2)插入图片,将图片转化为视频,创建VideoItem添加到List<VideoItem>中;
3)插入音乐,添加一条MusicEffectEntity到List<MusicEffectEntity>musicItems中;
4)插入录音,添加一条MusicEffectEntity到List<MusicEffectEntity>recordItems中;
5)添加转场,构造TransitionEntity添加到List<TransitionEntity>中,并找到添加转场的视频的id,修改关联videoid信息;
6)区间裁剪,找到对应的VideoItem,修改其selectedStartMs和selectedDurationMs;
7)添加滤镜,构造FilterEntity添加到List<FilterEntity>中,并修改关联的VideoId;
8)视频镜像,修改VideoItem中的FrameEffectEntity,水平镜像,垂直镜像分别定义为常量;
9)视频排序,修改List<VideoItem>中videoItem的顺序;
10)视频合成,同导入视频,仅需要添加videoItem到List<VideoItem>中。
草稿数据的保存:
当编辑操作被同步修改到Draft对象中后,触发草稿保存的时机,包括用户主动点击保存草稿,发布编辑好的视频,或者APP发生异常被捕获时(自动保存)。草稿的保存包括两个过程:
1)创建草稿文件夹,并以时间戳命名,将本次编辑相关的资源拷贝到草稿的文件夹中,由于资源都有位置信息,因此只需要从对应的位置将资源拷贝到草稿所在文件夹即可。
2)可选地,将内存中的Draft对象通过GSON(GSON是谷歌官方推出的支持JSON-JavaObject相互转换的Java序列化/反序列化库)序列化成字符串,保存到文件中,并命名为当前时间戳.draft即可。
当有异常发生后,或者下次进入到APP中时,可以选择恢复到前一份草稿保存的编辑状态,由于之前保存了草稿数据到草稿文件中,因此通过检测APP中Draft目录下的文件夹列表,来得到草稿数据。
步骤S102:根据所述草稿文件获取上一次退出时保存的所述相关数据。
当视频编辑应用重启时,检测到草稿文件中存储视频编辑应用在上一次退出时所保存的相关数据,则根据草稿文件获取上一次退出时保存的相关数据。
其中,当草稿文件的数量为多个时,根据草稿文件获取上一次退出时保存的相关数据的过程可以是:从多个草稿文件中选择最新的草稿文件,如选择时间戳最新的草稿文件;根据最新的草稿文件获取上一次退出时保存的相关数据。
作为一种实施方式,若采用将内存中的Draft对象通过GSON序列化成字符串的方式,将其保存到文件中时,则根据最新的草稿文件获取上一次退出时保存的相关数据的过程可以是:采用字符串的形式将最新的草稿文件中的内容读取到内存中;将该字符串反序列化为草稿对象,即可得到上一次退出时保存的相关数据。其中,采用序列化的形式保存草稿数据,方便其在不同的进程中进行传输和识别,以保证数据在传递过程中的完整性和便捷性。
步骤S103:根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
在根据草稿文件获取到上一次退出时保存的相关数据后,根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对资源对象中的视频的变换操作,以便继续进行下一步操作,极大的缩短编辑时间,提升用户体验;此外,在恢复时,不仅可以恢复上一次退出时编辑的资源对象(如视频、音频、文字、转场、滤镜)外,还可以恢复上一次退出时编辑的对资源对象中的视频的变换操作(如排序、变速、镜像)。
接下来,对具体的恢复逻辑进行说明:
对于视频列表的恢复,则根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作的过程可以是:从所述相关数据中的视频列表目录(List<VideoItem>)中获取视频列表信息,其中,该视频列表信息包括:至少一个视频,每个视频包括:视频基本信息(如包括视频唯一id、视频时长信息、视频区间裁剪时选择的开始时间、视频区间裁剪时选择的时长、视频音量、视频的宽度、视频的高度)、视频变速信息和视频镜像变换信息;针对每个视频,将该视频传输给解码器进行解码播放,并呈现在视频编辑页面的播放区域,并提取出该视频的序列帧图,按顺序排列显示在所述视频编辑页面的帧图预览区域,其中,播放时,根据该视频对应的视频基本信息、视频变速信息对应的速率以及视频镜像变换信息对应的镜像效果进行播放。恢复后的视频编辑页面,如图2所示,其中,播放区域用于播放视频,帧图预览区域用于显示按照顺序从视频列表中的每个视频的序列帧图。当触发所述视频编辑页面中的变速按钮时,跳转至变速编辑页面,并将所述变速编辑页面中的变速刻度尺的数值调整为当前播放视频的变速值。
其中,在进行视频播放时,是按照视频列表中的视频的顺序进行播放的,不同的高度和宽度所呈现出来的画面不同。若视频进行了变速处理,则在解码播放时,会根据视频变速信息中的变速值加速或减速解码速度,使播放的视频呈现出变速效果。若视频进行了镜像处理,则在播放进行了镜像处理的视频时,解码器通过GLSL脚本将视频镜像变换信息中视频的顶点数据进行上下交换或左右交换实现镜像,同时将视频镜像变换信息中视频的原纹理数据贴到交换后的顶点数据,使其呈现出镜像效果。
进一步地,从相关数据中找到List<VideoItem>,从中获取视频列表信息,记为L,将L发送给解码器,解码器收到数据后,分析视频的数量和每个视频的开始播放的位置和结束播放的位置,这两个位置由VideoItem中的selectedStartMs和selectedDurationMs来确定,对于selectedStartMs前的视频数据不播放,同时对应的帧图也不显示在帧图预览区域中。每次通过区间裁剪修改了视频的selectedStartMs和selectedDurationMs,会同步刷新序列帧图。当解码出来的数据时间超过selectedStartMs+selectedDurationMs时,会通过seek越过后续的视频数据,进入第二段视频的数据解码。SpeedEntity中会记录每段视频的变速信息,当检测到Draft中具有List<VideoItem>中SpeedEntity定义常量不为1时,表示该段视频发生了变速,则在进入视频编辑页面时,解码器会根据变速值,加快或减慢解码速度,当视频被加速播放时,解码器会采用丢帧的方式,加快序列帧的解码,当视频被减速播放时,解码器会在单位时间内,提供重复的帧,同时,序列帧图会因为视频加速而变短且因为视频减速而变长。FrameEffectEntity中会记录每段视频的视频镜像变换信息,在播放时,会根据视频镜像变换信息对应的镜像效果进行播放。
其中,解码器可以是由电子设备(一般称为硬解码)来提供或程序计算解码(称为软解码)来提供。
对于音频的恢复,根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象的过程可以是:从相关数据中的音频列表目录中获取每个音频信息(包括音频的id、音频的地址、音频的音量、开始时间、时长、音频是否循环播放);针对每个音频信息,将该音频信息传输给解码器进行解码播放。当触发视频编辑页面中的声音按钮时,跳转至音频编辑页面,并根据该音频信息中的开始时长和结束时长绘制音频蒙层并显示,音频蒙层的长度与开始时长到结束时长的时长对应。
其中,音乐的恢复包括录音和音乐恢复两种,当检测到Draft中具有List<MusicEffectEntity>musicItems时,会根据MusicEffectEntity中记录的音乐的id,从服务端下载这个音乐并保存到本地,并将MusicEffectEntity提交给解码器,当解码器解码到音乐的开始位置时开始播放音乐。当点击声音按钮时,跳转音乐编辑页面,将音乐蒙层根据selectedStartMs中记录的开始时长和selectedDurationMs中记录的结束时长绘制音频蒙层并显示。当检测到Draft中具有List<MusicEffectEntity>recordItems时,将MusicEffectEntity提交给解码器,当解码器解码到录音的开始位置时开始播放录音;当点击声音按钮时,跳转音乐编辑页面,并根据该selectedStartMs中的开始时长和selectedDurationMs中的结束时长绘制音频蒙层并显示。跳转后的音乐编辑页面,如图3所示,其中,图3中示出了包含3段录音和一段音乐的情形。需要说明的是,音频可以仅包括录音或音乐,因此不能将图3所示的同时包含了录音和音乐的情况理解成是对本申请的限制。
对于转场的恢复,根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象的过程可以是:从相关数据中的转场目录(List<TransitionEntity>)中获取转场信息(包括转场id、转场开始时间、转场持续时长、转场类型、关联的视频的id),并将转场信息传输给解码器,以使解码器根据转场信息确定所关联的视频id以及开始时间和持续时长,并在解码播放所述视频id对应的视频时,根据所述转场信息将所述视频id对应的视频的指定帧图(如最后一帧图)做转场变换,使其呈现出转场效果。进一步地,在解码到对应帧的数据时,解码器会根据存储的Transitions的名字来查找资源中的GLSL脚本,对该帧数据进行变换,它被顶点着色器或者片段着色器识别并执行,使其呈现出转场效果。当触发视频编辑页面中的编辑按钮时,跳转至转场编辑页面,并根据转场信息(如转场名称和关联的视频videoid)将指定帧图替换为转场图标,当转场图标被触发时,弹出转场效果选择框,跳转后的转场编辑页面,如图4所示,其中,图4中示出的转场图标为横向切片的转场图标,当点击转场图标时,则弹出转场效果选择框(包括无、叠黑、闪白、缩放、选择、模糊、横向切片、竖向切片),以供用户选择转场效果。其中,在转场时,可以指定对所关联的视频中的某一帧图做转场变换,如指定对最后一阵图作转场变换,则在恢复时,则转场信息将视频id对应的视频的最后一帧图做转场变换。
对于滤镜的恢复,根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象的过程可以是:从相关数据中的滤镜目录(List<FilterEntity>)中获取滤镜信息,进入编辑页面需要同步将滤镜信息提交给解码器,解码器根据滤镜信息中滤镜关联的视频id,当解码播放到视频id对应的视频时,将滤镜信息对应的滤镜效果渲染到对应的视频上。当触发视频编辑页面中的滤镜按钮时,跳转至滤镜编辑页面,根据滤镜信息(如滤镜名称和关联的视频id),将当前已选的滤镜效果标记为选中状态。跳转后的滤镜编辑页面,如图5所示,其中,图5中的当前滤镜效果为告白,因此标记为选中状态。
对于文字恢复,根据相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象过程可以是:从相关数据中的文字列表目录(List<StickerEntity>)中获取文字信息(文字id、文字变换信息、文字对齐方式、文字的开始时间、文字的时长、文字边框的宽度、文字边框的高度、文字颜色、文字横向阴影、文字纵向阴影、文字阴影颜色、文字大小、文字内容、文字字体路径等),进入视频编辑页面需要同步将文字信息提交给解码器,解码器解码到文字的开始时间时,会将文字信息对应的文字绘制到播放区域,根据文字信息中文字的颜色,大小,位置,selectedStartMs和selectedDurationMs将文字绘制到对应时间和对应的位置上。当触发视频编辑页面中的文字按钮时,跳转至文字编辑页面,并根据文字信息中的开始时长和持续时间绘制文字蒙层并显示,其中,文字蒙层的长度与持续时间对应,例如,当点击跳转文字编辑页面时,根据selectedStartMs和selectedDurationMs绘制一个蒙层到序列帧图上。跳转后的文字编辑页面,如图6所示。
通过上述的恢复逻辑便可使APP恢复到异常退出之前的编辑状态,进而提高编辑效率。其中,在恢复编辑状态后,在再次编辑的过程中,可主动(用户主动点击保存草稿)或被动(APP发生异常被捕获)保存草稿,实现对草稿文件中数据的更新,其具体的流程示意图可以参阅图7所示。本申请实施例中,当启动APP时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,若存在,则将草稿数据序列化到内存对象,并根据内存相关数据,恢复对应的编辑操作(包括资源对象以及对资源对象中的视频的变换操作),此外在编辑过程中可主动或被动保存草稿。本申请实施例提供的编辑异常恢复方法能够快速的恢复到崩溃前的编辑状态,以便继续进行下一步操作,极大的缩短编辑时间,提升用户体验。
本申请实施例还提供了一种编辑异常恢复装置100,如图8所示。该编辑异常恢复装置100包括:检测模块110、获取模块120以及恢复模块130。
检测模块110,用于当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作。
获取模块120,用于在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据。其中,当所述草稿文件的数量为多个时,获取模块120,用于:从多个草稿文件中选择最新的草稿文件;根据所述最新的草稿文件获取上一次退出时保存的相关数据。可选地,获取模块120,用于:采用字符串的形式将所述最新的草稿文件中的内容读取到内存中;将所述字符串反序列化为草稿对象,得到上一次退出时保存的相关数据。
恢复模块130,用于根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
可选地,恢复模块130,用于从所述相关数据中的视频列表目录中获取视频列表信息,所述视频列表信息包括:至少一个视频,每个视频包括:视频基本信息、视频变速信息和视频镜像变换信息;针对每个视频,将该视频传输给解码器进行解码播放,并呈现在所述视频编辑页面的播放区域,并提取出该视频的序列帧图,按顺序排列显示在所述视频编辑页面的帧图预览区域;其中,播放时,根据该视频对应的视频基本信息、视频变速信息对应的速率以及视频镜像变换信息对应的镜像效果进行播放;当触发所述视频编辑页面中的变速按钮时,跳转至变速编辑页面,并将所述变速编辑页面中的变速刻度尺的数值调整为当前播放视频的变速值。
可选地,所述资源对象还包括音频,恢复模块130,还用于从所述相关数据中的音频列表目录中获取音频列表信息,所述音频列表信息包括至少一个音频信息,每个音频信息包括开始时长和结束时长;针对每个音频信息,将该音频信息传输给所述解码器进行解码播放;当触发所述视频编辑页面中的声音按钮时,跳转至音频编辑页面,并根据该音频信息中的开始时长和结束时长绘制音频蒙层并显示,所述音频蒙层的长度与所述开始时长到所述结束时长的时长对应。
可选地,所述资源对象还包括转场,恢复模块130,还用于从所述相关数据中的转场目录中获取转场信息,并将所述转场信息传输给解码器,以使所述解码器根据所述转场信息确定所关联的视频id,并在播放所述视频id对应的视频时,根据所述转场信息将所述视频id对应的视频的指定帧图做转场变换,使其呈现出转场效果;当触发所述视频编辑页面中的编辑按钮时,跳转至转场编辑页面,并根据所述转场信息将所述指定帧图替换为转场图标,当所述转场图标被触发时,弹出转场效果选择框。
可选地,所述资源对象还包括文字,恢复模块130,还用于从所述相关数据中的文字列表目录中获取文字信息;将所述文字信息传输给所述解码器,以使所述解码器将所述文字信息对应的文字绘制到播放区域;当触发所述视频编辑页面中的文字按钮时,跳转至文字编辑页面,并根据所述文字信息中的开始时长和持续时间绘制文字蒙层并显示,所述文字蒙层的长度与所述持续时间对应。
可选地,所述资源对象还包括滤镜,恢复模块130,还用于从所述相关数据中的滤镜目录中获取滤镜信息;将所述滤镜信息传输给所述解码器,以使所述解码器根据所述滤镜信息获得滤镜关联的视频id,当解码播放到所述视频id对应的视频时,将所述滤镜信息对应的滤镜效果渲染到该视频上,使其呈现出镜像效果;当触发所述视频编辑页面中的滤镜按钮时,跳转至滤镜编辑页面,并根据所述滤镜信息将当前已选的滤镜效果标记为选中状态。
本申请实施例所提供的编辑异常恢复装置100,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
如图9所示,图9示出了本申请实施例提供的一种电子设备200的结构框图。所述电子设备200包括:收发器210、存储器220、通讯总线230以及处理器240。
所述收发器210、所述存储器220、处理器240各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线230或信号线实现电性连接。其中,收发器210用于收发数据。存储器220用于存储计算机程序,如存储有图8中所示的软件功能模块,即编辑异常恢复装置100。其中,编辑异常恢复装置100包括至少一个可以软件或固件(firmware)的形式存储于所述存储器220中或固化在所述电子设备200的操作系统(operating system,OS)中的软件功能模块。所述处理器240,用于执行存储器220中存储的可执行模块,例如编辑异常恢复装置100包括的软件功能模块或计算机程序。例如,处理器240,用于当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作;在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据;根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
其中,存储器220可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器240可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器240也可以是任何常规的处理器等。
其中,上述的电子设备200,包括但不限于智能手机、平板等移动终端。
本申请实施例还提供了一种非易失性计算机可读取存储介质(以下简称存储介质),该存储介质上存储有计算机程序,该计算机程序被计算机如上述的电子设备200运行时,执行上述方法实施例所示的编辑异常恢复方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种编辑异常恢复方法,其特征在于,包括:
当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作;
在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据;
根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
2.根据权利要求1所述的方法,其特征在于,根据所述草稿文件获取上一次退出时保存的所述相关数据,包括:
采用字符串的形式将所述草稿文件中的内容读取到内存中;
将所述字符串反序列化为草稿对象,得到上一次退出时保存的所述相关数据。
3.根据权利要求1所述的方法,其特征在于,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作,包括:
从所述相关数据中的视频列表目录中获取视频列表信息,所述视频列表信息包括:至少一个视频,每个视频包括:视频基本信息、视频变速信息和视频镜像变换信息;
针对每个视频,将该视频传输给解码器进行解码播放,并呈现在所述视频编辑页面的播放区域,并提取出该视频的序列帧图,按顺序排列显示在所述视频编辑页面的帧图预览区域;其中,播放时,根据该视频对应的视频基本信息、视频变速信息对应的速率以及视频镜像变换信息对应的镜像效果进行播放;
当触发所述视频编辑页面中的变速按钮时,跳转至变速编辑页面,并将所述变速编辑页面中的变速刻度尺的数值调整为当前播放视频的变速值。
4.根据权利要求3所述的方法,其特征在于,所述资源对象还包括音频,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:
从所述相关数据中的音频列表目录中获取音频列表信息,所述音频列表信息包括至少一个音频信息,每个音频信息包括开始时长和结束时长;
针对每个音频信息,将该音频信息传输给所述解码器进行解码播放;
当触发所述视频编辑页面中的声音按钮时,跳转至音频编辑页面,并根据该音频信息中的开始时长和结束时长绘制音频蒙层并显示,所述音频蒙层的长度与所述开始时长到所述结束时长的时长对应。
5.根据权利要求3所述的方法,其特征在于,所述资源对象还包括转场,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:
从所述相关数据中的转场目录中获取转场信息,并将所述转场信息传输给解码器,以使所述解码器根据所述转场信息确定所关联的视频id,并在播放所述视频id对应的视频时,根据所述转场信息将所述视频id对应的视频的指定帧图做转场变换,使其呈现出转场效果;
当触发所述视频编辑页面中的编辑按钮时,跳转至转场编辑页面,并根据所述转场信息将所述指定帧图替换为转场图标,当所述转场图标被触发时,弹出转场效果选择框。
6.根据权利要求3所述的方法,其特征在于,所述资源对象还包括文字,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:
从所述相关数据中的文字列表目录中获取文字信息;
将所述文字信息传输给所述解码器,以使所述解码器将所述文字信息对应的文字绘制到播放区域;
当触发所述视频编辑页面中的文字按钮时,跳转至文字编辑页面,并根据所述文字信息中的开始时长和持续时间绘制文字蒙层并显示,所述文字蒙层的长度与所述持续时间对应。
7.根据权利要求3所述的方法,其特征在于,所述资源对象还包括滤镜,根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象,还包括:
从所述相关数据中的滤镜目录中获取滤镜信息;
将所述滤镜信息传输给所述解码器,以使所述解码器根据所述滤镜信息获得滤镜关联的视频id,当解码播放到所述视频id对应的视频时,将所述滤镜信息对应的滤镜效果渲染到该视频上,使其呈现出镜像效果;
当触发所述视频编辑页面中的滤镜按钮时,跳转至滤镜编辑页面,并根据所述滤镜信息将当前已选的滤镜效果标记为选中状态。
8.一种编辑异常恢复装置,其特征在于,包括:
检测模块,用于当视频编辑应用重启时,检测草稿文件中是否存储有所述视频编辑应用在上一次退出时所保存的相关数据,所述相关数据包括资源对象以及对所述资源对象中的视频的变换操作;
获取模块,用于在为是时,根据所述草稿文件获取上一次退出时保存的所述相关数据;
恢复模块,用于根据所述相关数据在视频编辑页面中恢复上一次退出时编辑的资源对象以及对所述资源对象中的视频的变换操作。
9.一种电子设备,其特征在于,包括:
存储器和处理器,所述处理器与所述存储器连接;
所述存储器,用于存储程序;
所述处理器,用于调用存储于所述存储器中的程序,以执行如权利要求1-7中任一项所述的方法。
10.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010268605.4A CN111488244A (zh) | 2020-04-07 | 2020-04-07 | 一种编辑异常恢复方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010268605.4A CN111488244A (zh) | 2020-04-07 | 2020-04-07 | 一种编辑异常恢复方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111488244A true CN111488244A (zh) | 2020-08-04 |
Family
ID=71810883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010268605.4A Pending CN111488244A (zh) | 2020-04-07 | 2020-04-07 | 一种编辑异常恢复方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111488244A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112269682A (zh) * | 2020-10-20 | 2021-01-26 | 深圳市前海手绘科技文化有限公司 | 一种动画视频备份方法 |
CN112764869A (zh) * | 2021-01-29 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 一种作品编辑提示方法、装置、电子设备和存储介质 |
CN112988459A (zh) * | 2021-02-03 | 2021-06-18 | 湖北瑞致和科技有限公司 | 一种网络视频制作用特效画面制作插件 |
CN113722040A (zh) * | 2021-09-07 | 2021-11-30 | 北京达佳互联信息技术有限公司 | 作品处理方法、装置、计算机设备及介质 |
WO2023000805A1 (zh) * | 2021-07-23 | 2023-01-26 | 北京字跳网络技术有限公司 | 视频蒙层显示方法、装置、设备及介质 |
CN118093528A (zh) * | 2024-04-25 | 2024-05-28 | 飞狐信息技术(天津)有限公司 | 一种画板数据保存方法、装置、存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848933A (zh) * | 2005-04-15 | 2006-10-18 | 索尼株式会社 | 内容记录系统和内容记录方法 |
CN106210846A (zh) * | 2016-08-15 | 2016-12-07 | 深圳Tcl新技术有限公司 | 音视频播放方法及系统 |
CN108108268A (zh) * | 2017-11-28 | 2018-06-01 | 北京川上科技有限公司 | 一种视频录制应用的退出重启处理方法和装置 |
CN109637561A (zh) * | 2018-11-13 | 2019-04-16 | 成都依能科技股份有限公司 | 一种多通道音视频自动智能编辑方法 |
-
2020
- 2020-04-07 CN CN202010268605.4A patent/CN111488244A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848933A (zh) * | 2005-04-15 | 2006-10-18 | 索尼株式会社 | 内容记录系统和内容记录方法 |
CN106210846A (zh) * | 2016-08-15 | 2016-12-07 | 深圳Tcl新技术有限公司 | 音视频播放方法及系统 |
CN108108268A (zh) * | 2017-11-28 | 2018-06-01 | 北京川上科技有限公司 | 一种视频录制应用的退出重启处理方法和装置 |
CN109637561A (zh) * | 2018-11-13 | 2019-04-16 | 成都依能科技股份有限公司 | 一种多通道音视频自动智能编辑方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112269682A (zh) * | 2020-10-20 | 2021-01-26 | 深圳市前海手绘科技文化有限公司 | 一种动画视频备份方法 |
CN112764869A (zh) * | 2021-01-29 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 一种作品编辑提示方法、装置、电子设备和存储介质 |
CN112988459A (zh) * | 2021-02-03 | 2021-06-18 | 湖北瑞致和科技有限公司 | 一种网络视频制作用特效画面制作插件 |
CN112988459B (zh) * | 2021-02-03 | 2024-03-08 | 湖北瑞致和科技有限公司 | 一种网络视频制作用特效画面制作系统 |
WO2023000805A1 (zh) * | 2021-07-23 | 2023-01-26 | 北京字跳网络技术有限公司 | 视频蒙层显示方法、装置、设备及介质 |
US12039628B2 (en) | 2021-07-23 | 2024-07-16 | Beijing Zitiao Network Technology Co., Ltd. | Video mask layer display method, apparatus, device and medium |
CN113722040A (zh) * | 2021-09-07 | 2021-11-30 | 北京达佳互联信息技术有限公司 | 作品处理方法、装置、计算机设备及介质 |
CN113722040B (zh) * | 2021-09-07 | 2023-09-05 | 北京达佳互联信息技术有限公司 | 作品处理方法、装置、计算机设备及介质 |
CN118093528A (zh) * | 2024-04-25 | 2024-05-28 | 飞狐信息技术(天津)有限公司 | 一种画板数据保存方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111488244A (zh) | 一种编辑异常恢复方法、装置、电子设备及存储介质 | |
CN107729475B (zh) | 网页元素采集方法、装置、终端与计算机可读存储介质 | |
CN111818123B (zh) | 网络前端远程回放方法、装置、设备及存储介质 | |
CN109286850B (zh) | 一种基于弹幕的视频标注方法及终端 | |
CN107562600B (zh) | 页面检测方法、装置、计算设备以及存储介质 | |
WO2015035943A1 (zh) | 一种在浏览器中进行图片加载的方法、装置和浏览器 | |
EP2034487B1 (en) | Method and system for generating thumbnails for video files | |
CN109558513B (zh) | 一种内容推荐方法、装置、终端及存储介质 | |
US20110040804A1 (en) | Dynamic presentation framework | |
KR101916874B1 (ko) | 자동으로 동영상 하이라이트 영상의 제목을 생성하는 방법, 장치 및 컴퓨터 판독가능 기록 매체 | |
CN108509589B (zh) | 信息流展示方法及系统、计算机可读存储介质 | |
CN108334508B (zh) | 网页信息的提取方法和装置 | |
WO2015035944A1 (zh) | 一种在浏览器中进行图片处理的方法、装置和浏览器 | |
TWI521963B (zh) | 電子裝置及視訊標籤方法 | |
CN111866577A (zh) | 屏幕录制方法、电子设备及计算机可读存储介质 | |
CN112784529A (zh) | 基于BetterScroll的移动端排序表格及其构建方法 | |
CN110825600B (zh) | 一种页面信息处理方法、服务器和页面展示装置 | |
US20140157147A1 (en) | Feedback system, feedback method and recording media thereof | |
CN112307384B (zh) | 页面快照展示方法、装置、电子设备及存储介质 | |
KR20180017424A (ko) | 디스플레이 장치 및 제어 방법 | |
CN112306870A (zh) | 一种基于直播app的数据处理方法和装置 | |
CN103761020A (zh) | 一种快捷导航的方法和装置 | |
CN116156266A (zh) | 多路视频数据存储方法、系统、电子设备及存储介质 | |
CN106572140B (zh) | 媒体文件播放的方法和终端设备 | |
CN111311715B (zh) | 一种网页中添加动画效果的方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200804 |
|
RJ01 | Rejection of invention patent application after publication |