一种媒体文件录制异常的修复方法及装置与流程

文档序号:11286047阅读:424来源:国知局
一种媒体文件录制异常的修复方法及装置与流程

本发明涉及媒体文件修复领域,尤指一种媒体文件录制异常的修复方法及装置。



背景技术:

媒体文件,例如mp4文件,其结构可分成两部分,一部分为媒体数据,另一部分为数据描述。由于数据描述部分随着媒体数据部分内容的不断增加,会不断增加及修改,目前通常对媒体文件的实现方式都是在文件结构上把媒体数据部分放在媒体文件的前面部分,把数据描述部分临时存放在内存中,在执行停止录制时,将内存中的数据写到媒体文件的后面部分中。这样的实现方式,在程序异常退出或者设备异常断电等无法控制的事件发生时,导致未能在媒体文件的后面部分加上相应的数据描述,导致媒体文件异常,无法被解析使用。

现有技术中解决媒体文件录制异常的方法通常采用在写媒体文件时,将数据描述放在媒体文件前面部分,媒体数据放在媒体文件的后面部分。

上述方法是通过改变媒体文件内部的常用排布方式,将文件的结构调整为先数据描述后媒体数据,它的实现机制是在媒体文件的前面部分预留足够大的区域用于存放数据描述,实时增加及更新数据描述,即使发生异常,由于数据描述实时都存放于文件中,录制的文件格式不发生异常。这种方法的缺点在于,由于数据描述的大小与媒体数据的量有关,例如,为了使得预留的部分能够容纳不确定大小的数据描述,可能要预留70m左右的磁盘空间用于存储数据描述,在录制媒体数据量较小时,比如10分钟,可能只需使用不到10m的磁盘空间来存储数据描述,这样就导致预留磁盘空间的大量浪费。如果录制文件只需要录制音频数据,由于音频数据量很小,导致文件实际有效部分与文件实际大小比值小,造成很大的浪费。



技术实现要素:

为解决现有技术中媒体文件录制异常的问题,本发明通过记录媒体文件录制操作的方法修复媒体文件。

为了实现上述目的,本发明实施例提供一种媒体文件的录制方法,该方法包括:

在非易失存储器中,创建独立于媒体文件的操作记录文件;

在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

本发明实施例还提供一种媒体文件的修复方法,该方法包括:

在非易失存储器中,查找独立于媒体文件的操作记录文件;

根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分;

根据所述数据描述部分及媒体数据,修复所述媒体文件。

本发明实施例还提供一种媒体文件的录制装置,所述装置包括:

一创建模块,用于在非易失存储器中,创建独立于媒体文件的操作记录文件;

一记录模块,用于在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

本发明实施例还提供一种媒体文件的修复装置,所述装置包括:

一查找模块,用于在非易失存储器中,查找独立于媒体文件的操作记录文件;

一还原模块,用于根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分;

一修复模块,用于根据所述数据描述部分及媒体数据,修复所述媒体文件。

本发明实施例还提供一种计算机可读存储介质,其包括存储的计算机程序,当运行计算机程序时控制终端设备执行如下操作:

在非易失存储器中,创建独立于媒体文件的操作记录文件;

在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

本发明实施例还提供另一种计算机可读存储介质,其包括存储的计算机程序,当运行计算机程序时控制终端设备执行如下操作:

在非易失存储器中,查找独立于媒体文件的操作记录文件;

根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分;

根据所述数据描述部分及媒体数据,修复所述媒体文件。

本发明实施例还提供一种媒体文件录制异常的修复方法,该方法包括:

当记录媒体文件录制操作时,具体包括:

在非易失存储器中,创建独立于所述媒体文件的操作记录文件;

在所述操作记录文件中,记录所述媒体文件录制的操作步骤;

当修复媒体文件时,具体包括:

在非易失存储器中,查找所述操作记录文件;

根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分;

根据所述数据描述部分及媒体数据,修复所述媒体文件。

本发明采用记录媒体文件录制操作的方法,创建独立于媒体文件的操作记录文件,在发生异常情况时,操作记录文件不丢失,再次启动程序时,根据所述操作记录文件的内容,修复媒体文件。通过本发明的方法,在避免由于异常情况导致媒体文件损坏的同时,又可以避免浪费存储器空间资源,达到可靠有效的修复媒体文件的效果。

为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。

附图说明

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

图1为本发明实施例一种媒体文件的录制方法的流程图;

图2为本发明实施例一种媒体文件的录制装置的结构示意图;

图3为本发明实施例一种媒体文件的修复方法的流程图;

图4为本发明实施例一种媒体文件的修复装置的结构示意图;

图5为本发明实施例一种媒体文件录制异常的修复方法的具体流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示为本发明实施例一种媒体文件的录制方法的流程图,在非易失存储器中创建操作记录文件,所述操作记录文件独立于媒体文件,将媒体文件录制的操作步骤记录在所述操作记录文件中。

本图中方法具体包括,步骤101,在非易失存储器中,创建独立于媒体文件的操作记录文件。

步骤102,在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

其中,所述非易失存储器可以包括例如机械硬盘、固态硬盘等,当然本实施例中的机械硬盘、固态硬盘只是一个举例,还可以有其他的非易失存储器。

在本实施例中,所述媒体文件可以包括例如mp4文件,当然本实施例中的mp4文件只是一个举例,还可以有其他格式的媒体文件。

在本实施例中,所述操作记录文件的内容可以包括例如时长、帧长度及时间比例等关键参数,当然本实施例中的时长、帧长度及时间比例只是一个举例,还可以有其他的关键参数。

作为本发明的一个实施例,所述方法还包括,

在易失存储器中,记录实时更新的所述媒体文件的数据描述部分;

当录制所述媒体文件完毕后,根据所述数据描述部分及媒体数据,生成所述媒体文件;

删除所述操作记录文件。

其中,所述易失存储器可以包括例如电脑内存等,当然本实施例中的电脑内存只是一个举例,还可以有其他的易失存储器。

以上实施例是上述操作记录文件的补充,即,在记录操作记录文件的同时还可以在内存中实时记录更新的媒体文件的数据描述部分,如果录制媒体文件可以正常完成,则可以使用内存中的数据描述部分和媒体数据生成媒体文件。

在本实施例中,录制媒体文件时,同时不断记录实时更新的所述媒体文件的数据描述部分,当录制过程中没有发生异常情况时,执行关闭所述媒体文件的操作,根据记录的所述数据描述部分及媒体数据,生成媒体文件,并删除所述操作记录文件。

通过上述本发明实施例中的方法,可以记录媒体文件录制的操作步骤,并且在录制过程中没有发生异常情况时,可以生成媒体文件并且删除操作记录文件。

如图2所示为本发明实施例一种媒体文件的录制装置的结构示意图,包括创建模块201,用于在非易失存储器中,创建独立于媒体文件的操作记录文件。

记录模块202,用于在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

其中,所述非易失存储器可以包括例如机械硬盘、固态硬盘等,当然本实施例中的机械硬盘、固态硬盘只是一个举例,还可以有其他的非易失存储器。

在本实施例中,所述媒体文件可以包括例如mp4文件,当然本实施例中的mp4文件只是一个举例,还可以有其他格式的媒体文件。

通过上述本发明实施例中的装置,可以记录媒体文件录制的操作步骤,并且在录制过程中没有发生异常情况时,可以生成媒体文件并且删除操作记录文件。

如图3所示为本发明实施例一种媒体文件的修复方法的流程图,当媒体文件录制过程中发生异常情况时,程序再次启动时,在非易失存储器中,查找独立于媒体文件的操作记录文件,在所述操作记录文件中记录了媒体文件录制过程的操作步骤,根据操作记录文件的内容,还原所述媒体文件的数据描述部分,根据所述数据描述部分及媒体数据,修复所述媒体文件。

本图中方法具体包括,步骤301,在非易失存储器中,查找独立于媒体文件的操作记录文件。

步骤302,根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分。

步骤303,根据所述数据描述部分及媒体数据,修复所述媒体文件。

其中,所述非易失存储器可以包括例如机械硬盘、固态硬盘等,当然本实施例中的机械硬盘、固态硬盘只是一个举例,还可以有其他的非易失存储器。

在本实施例中,所述媒体文件可以包括例如mp4文件,当然本实施例中的mp4文件只是一个举例,还可以有其他格式的媒体文件。

作为本发明的一个实施例,在查找所述操作记录文件之前还包括:判断非易失性内存中是否包括没有正常录制完成的媒体文件,当要恢复所述未正常录制完成的媒体文件时,在非易失存储器中,查找所述操作记录文件。

在本实施例中,记录在所述操作记录文件中的关键参数例如时长,通过操作记录文件还原所述数据描述部分的过程,具体可以为例如写视频数据操作,操作记录文件中记录了每一帧的时长,根据所述每一帧的时长,可以还原所述数据描述部分中的帧-帧时间间隔,帧-帧时间间隔为所述数据描述部分的关键参数之一,由此可以通过操作记录文件中的内容一一对应来还原所述数据描述部分。

在本实施例中,当媒体录制过程时,发生了异常情况而没有执行关闭所述媒体文件的操作,使媒体文件异常,再次启动程序时,在非易失存储器中,查找所述操作记录文件,根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分,根据所述数据描述部分及所述媒体数据,修复所述媒体文件。

通过上述本发明实施例中的方法,在媒体文件录制过程中发生异常时,可以通过查找操作记录文件,并根据操作记录文件中的内容,还原所述媒体文件的数据描述部分,根据所述数据描述部分及所述媒体数据,修复所述媒体文件。

如图4所示为本发明实施例一种媒体文件的修复装置的结构示意图,包括查找模块401,用于在非易失存储器中,查找独立于媒体文件的操作记录文件。

还原模块402,用于根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分。

修复模块403,用于根据所述数据描述部分及媒体数据,修复所述媒体文件。

其中,所述非易失存储器可以包括例如机械硬盘、固态硬盘等,当然本实施例中的机械硬盘、固态硬盘只是一个举例,还可以有其他的非易失存储器。

在本实施例中,所述媒体文件可以包括例如mp4文件,当然本实施例中的mp4文件只是一个举例,还可以有其他格式的媒体文件。

通过上述本发明实施例中的装置,在媒体文件录制过程中发生异常时,可以通过查找操作记录文件,并根据操作记录文件中的内容,还原所述媒体文件的数据描述部分,根据所述数据描述部分及所述媒体数据,修复所述媒体文件。

如图5所示为本发明实施例一种媒体文件录制异常的修复方法的具体流程图,通过记录媒体文件的录制操作步骤,在录制发生异常情况时,程序再次启动后,查找操作记录文件,根据所述操作记录文件内容,还原所述媒体文件的数据描述部分,根据所述数据描述部分及媒体数据,修复媒体文件。

本图中方法具体包括,步骤501,在非易失存储器中,创建独立于所述媒体文件的操作记录文件。

步骤502,在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

步骤503,在非易失存储器中,查找所述操作记录文件。

步骤504,根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分。

步骤505,根据所述数据描述部分及媒体数据,修复所述媒体文件。

其中,所述非易失存储器可以包括例如机械硬盘、固态硬盘等,当然本实施例中的机械硬盘、固态硬盘只是一个举例,还可以有其他的非易失存储器。

在本实施例中,所述媒体文件可以包括例如mp4文件,当然本实施例中的mp4文件只是一个举例,还可以有其他格式的媒体文件。

作为本发明的一个实施例,所述根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分包括,根据所述操作记录文件中的关键参数,对应还原所述数据描述部分中的关键参数。

其中,所述关键参数可以包括例如时长、帧长度及时间比例等等,当然本实施例中的时长、帧长度及时间比例只是一个举例,还可以有其他的关键参数。

在本实施例中,记录在所述操作记录文件中的关键参数例如时长,通过操作记录文件还原所述数据描述部分的过程,具体可以为例如写视频数据操作,操作记录文件中记录了每一帧的时长,根据所述每一帧的时长,可以还原所述数据描述部分中的帧-帧时间间隔,帧-帧时间间隔为所述数据描述部分的关键参数之一,由此可以通过操作记录文件中的内容一一对应来还原所述数据描述部分。

在本实施例中,所述媒体文件可以包括例如mp4文件,以录制及修复mp4文件为例,在创建mp4文件的同时,在非易失存储器中,创建独立于mp4文件的操作记录文件,在录制mp4文件时,在所述非易失存储器中,以一帧音频数据、一帧视频数据的交替方式写入音、视频数据,同时,在所述操作记录文件中,记录每一写音、视频的操作及对应每一帧音、视频数据的时长、帧长度等信息,并且,在内存中记录实时更新的mp4文件的数据描述部分。当录制正常结束时,将内存中的mp4文件的数据描述部分写到mp4文件的后面部分,由此生成完整的mp4文件,同时,删除所述操作记录文件;当录制发生异常时,内存中mp4文件的数据描述部分无法正常写到mp4文件的后面部分,导致mp4文件异常,再次启动录制mp4文件的程序时,扫描上次录制对应的目录,查找操作记录文件,根据操作记录文件中的时长、帧长度等关键参数,对应还原所述数据描述部分中的时间间隔、帧长度等关键参数,具体的,可以包括例如在操作记录文件中的时长、帧长度等,根据每一帧数据的时长,可以得到两帧数据之间的时间间隔,其中,例如一帧视频数据的时长为其播放时间,可以为例如40毫秒,由此可以得到数据描述部分中的帧-帧时间间隔,再如由所述操作记录文件中的记录的帧长度,对应得到数据描述部分中的帧长度,当然本实施例中的时长、帧长度及时间比例只是一个举例,还可以有其他的关键参数,通过操作记录文件中的内容一一对应来还原所述数据描述部分中的内容,由此还原所述mp4文件的数据描述部分,将所述数据描述部分写到mp4文件的后面部分,由此完成修复mp4文件。

通过上述本发明实施例中的方法,在媒体文件录制过程发生异常情况时,修复由此异常情况导致损坏的媒体文件,同时,又可以避免浪费存储器空间资源,达到可靠有效的修复媒体文件的效果。

作为本发明一个实施例,一种计算机可读存储介质,其包括存储的计算机程序,当运行计算机程序时控制终端设备执行如下操作,

在非易失存储器中,创建独立于媒体文件的操作记录文件;

在所述操作记录文件中,记录所述媒体文件录制的操作步骤。

作为本发明另一个实施例,一种计算机可读存储介质,其包括存储的计算机程序,当运行计算机程序时控制终端设备执行如下操作,

在非易失存储器中,查找独立于媒体文件的操作记录文件;

根据所述操作记录文件的内容,还原所述媒体文件的数据描述部分;

根据所述数据描述部分及媒体数据,修复所述媒体文件。

通过上述本发明实施例中的方法及装置,创建独立于媒体文件的操作记录文件,在发生异常情况时,操作记录文件不丢失,再次启动程序时,根据所述操作记录文件的内容,修复媒体文件。通过本发明的方法,在避免由于异常情况导致媒体文件损坏的同时,又可以避免浪费存储器空间资源,达到可靠有效的修复媒体文件的效果。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,比如rom/ram、磁碟、光盘等。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1