一种监控视频文件修复方法

文档序号:6549904阅读:723来源:国知局
一种监控视频文件修复方法
【专利摘要】本发明提供一种监控视频文件修复方法,包括写视频文件头信息;还包括:置当前视频文件为正在写入状态;将视频帧数据写入媒体数据对象块,周期性地将媒体索引信息保存到存储器中;视频帧数据写入完成后,将媒体索引信息写入视频文件末尾,并置当前视频文件为写入完成状态;视频帧数据异常中断写入时,将视频断点信息记录在视频断点记忆库中,并置当前视频文件为写入未完成状态;视频监控设备开机时,若检测到存在写入未完成状态的视频文件,读取视频断点信息,将该视频文件的媒体索引信息写入该视频文件的断点处,置该视频文件为写入完成状态。本发明在视频录制过程中断电后,修复受损的视频文件,并恢复到断电前几秒的视频,以保证视频的完整性。
【专利说明】一种监控视频文件修复方法

【技术领域】
[0001] 本发明涉及视频监控【技术领域】,尤其涉及一种监控视频文件修复方法,如用于车 载视频监控系统、楼宇安防监控系统等。

【背景技术】
[0002] 在嵌入式设备视频监控领域,通常由于存储容量限制,需要将视频压缩后本地存 储,主流的压缩格式为H264,压缩后本地的存储格式一般为MP4或3GP等。由于MP4或3GP 的格式特点,需要先写入视频数据,最后写入数据索引信息,以支持视频拖放。如果写入的 过程中异常退出,则将由于未能及时写入数据索引信息,而导致视频文件无法播放。
[0003] 目前很多现有的MP4视频读写库的缺点为:在写入MP4视频文件的过程中断电,将 因当前写入的文件不完整而导致文件无法播放。如果视频监控设备在录制视频的过程中, 被人为破坏或自然原因而异常断电,那么关键的现场视频信息将丢失。


【发明内容】

[0004] 本发明提供一种监控视频文件修复方法,在视频录制过程中断电,视频监控设备 下次开机后可自动修复受损的视频文件,并恢复到断电前一段时间的视频,以实现即使出 现监控设备异常断电的情况,也能保证视频的完整性。
[0005] 为达到上述目的,本发明所采取的技术方案为:
[0006] 本发明提供一种监控视频文件修复方法,包括写视频文件头信息;还包括:
[0007] 保存正在写入的视频文件的名称,并置当前视频文件为正在写入状态;
[0008] 将视频帧数据写入媒体数据对象块,在内存中记录视频帧的媒体索引信息,并周 期性地将媒体索引信息保存到存储器中;
[0009] 视频帧数据写入完成后,将媒体索引信息写入视频文件末尾,并置当前视频文件 为写入完成状态;
[0010] 视频帧数据被异常中断写入时,将视频断点信息记录在视频断点记忆库中,并置 当前视频文件为写入未完成状态;
[0011] 视频监控设备开机时,检测是否存在写入未完成状态的视频文件,若否,则检测完 成,无需修复视频文件;若是,读取所述视频断点信息,将所述存储器中保存的该视频文件 的媒体索引信息写入该视频文件的断点处,重建媒体索引信息和视频文件头信息以修复该 视频文件,修复完成后,置该视频文件为写入完成状态。
[0012] 进一步地,在将媒体索引信息写入视频文件末尾或断点处之后,更新媒体数据对 象块的长度信息。
[0013] 进一步地,所述视频断点信息包括全局信息、帧长度列表、帧和组列表、组位置列 表、时间和帧列表、关键帧列表;所述全局信息包括文件名、视频编码参数信息、视频编码信 息。
[0014] 本发明通过在视频帧数据写入过程中,周期性地将媒体索引信息保存到存储器 中,在视频监控设备异常断电后又开机时,如检查到存在未正常关闭的视频,则利用保存的 媒体索引信息恢复视频文件,从而避免视频监控设备异常断电后,关键的监控视频信息丢 失,保证视频的完整性。

【专利附图】

【附图说明】
[0015] 图1是本发明的监控视频文件修复方法的流程示意图;
[0016] 图2是本发明中的视频媒体信息BOX示意图;
[0017] 图3是本发明中的MP4视频文件的BOX树示意图;
[0018] 图4是本发明的监控视频文件修复方法的具体实施流程示意图。

【具体实施方式】
[0019] 下面结合附图具体阐明本发明的实施方式,附图仅供参考和说明使用,不构成对 本发明专利保护范围的限制。
[0020] 如图1所示,本发明的实施例提供一种监控视频文件修复方法,包括写视频文件 头信息ftyp ;还包括:
[0021] 保存正在写入的视频文件的名称,并置当前视频文件为正在写入状态;
[0022] 将视频帧数据写入媒体数据对象块mdat,在内存中记录视频帧的媒体索引信息 moov,并周期性地(如每3秒)将媒体索引信息moov保存到存储器中;媒体索引信息moov 包括帧的大小、索引、文件位置偏移等;
[0023] 视频帧数据写入完成后,将媒体索引信息moov写入视频文件末尾,并置当前视频 文件为写入完成状态;
[0024] 视频帧数据被异常中断写入时,将视频断点信息从开源MP4读写库记录在视频断 点记忆库libmp4repair. so中,并置当前视频文件为写入未完成状态;
[0025] 视频监控设备开机时,检测是否存在写入未完成状态的视频文件,若否,则检测 完成,无需修复视频文件;若是,读取所述视频断点信息,将所述存储器中保存的该视频文 件的媒体索引信息写入该视频文件的断点处,重建媒体索引信息moov和视频文件头信息 ftyp以修复该视频文件,修复完成后,置该视频文件为写入完成状态。
[0026] 在本发明的实施例中,在将媒体索引信息moov写入视频文件末尾或断点处之后, 更新媒体数据对象块mdat的长度信息。
[0027] 在本发明的实施例中,所述视频断点信息包括全局信息、帧长度列表stsz、帧和组 列表stsc、组位置列表stco、时间和巾贞列表stst、关键巾贞列表stss ;所述全局信息包括文件 名、视频编码参数信息tkhd,,mdhd、视频编码信息stsd。
[0028] 在本发明的实施例中,所述视频文件的存储格式为MP4或3GP。MP4文件中的所有 数据都装在box(QuickTime中为atom)中,也就是说MP4文件由若干个box组成,每个box 有类型和长度,可以将box理解为一个数据对象块。box中可以包含另一个box,视频文件 主要由视频内容box和视频媒体索引信息box组成。由于视频文件的随机拖动访问性,所 以在录制文件时,必须先写入视频内容帧,写完后再写入视频媒体索引信息BOX并刷新视 频媒体索引信息BOX的长度,当录制中断电时,由于未写入视频媒体索引信息,所以文件无 法解析和播放定位。本发明通过在视频帧数据写入过程中,周期性地(如每3秒)将媒体 索引信息保存到存储器中,在视频监控设备异常断电后又开机时,如检查到存在未正常关 闭的视频,则利用保存的媒体索引信息自动修复受损的视频文件,并可恢复到断电前3秒 的视频。如图2及表1所示,视频媒体信息BOX主要包括:
[0029] 表1视频媒体信息表
[0030]

【权利要求】
1. 一种监控视频文件修复方法,包括写视频文件头信息; 其特征在于,还包括: 保存正在写入的视频文件的名称,并置当前视频文件为正在写入状态; 将视频帧数据写入媒体数据对象块,在内存中记录视频帧的媒体索引信息,并周期性 地将媒体索引信息保存到存储器中; 视频帧数据写入完成后,将媒体索引信息写入视频文件末尾,并置当前视频文件为写 入完成状态; 视频帧数据被异常中断写入时,将视频断点信息记录在视频断点记忆库中,并置当前 视频文件为写入未完成状态; 视频监控设备开机时,检测是否存在写入未完成状态的视频文件,若是,读取所述视频 断点信息,将所述存储器中保存的该视频文件的媒体索引信息写入该视频文件的断点处, 重建媒体索引信息和视频文件头信息以修复该视频文件,修复完成后,置该视频文件为写 入完成状态。
2. 根据权利要求1所述的监控视频文件修复方法,其特征在于: 在将媒体索引信息写入视频文件末尾或断点处之后,更新媒体数据对象块的长度信 息。
3. 根据权利要求1所述的监控视频文件修复方法,其特征在于: 所述视频断点信息包括全局信息、帧长度列表、帧和组列表、组位置列表、时间和帧列 表、关键帧列表;所述全局信息包括文件名、视频编码参数信息、视频编码信息。
【文档编号】G06F17/30GK104063447SQ201410270311
【公开日】2014年9月24日 申请日期:2014年6月17日 优先权日:2014年6月17日
【发明者】王碧 申请人:惠州华阳通用电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1