一种监控录像异常的保护方法

文档序号:10516111阅读:501来源:国知局
一种监控录像异常的保护方法
【专利摘要】本发明涉及视频编辑技术领域,具体的说是一种监控录像异常的保护方法。本发明方法针对异常发生时录像文件由于缺少索引信息而无法播放的问题,在文件开始位置预留索引信息空间,在录像过程中周期性的向预留的索引信息空间更新录像文件的索引信息,只要录像文件中包含任意一次写入的索引信息,改录像文件就可以播放。另外,本发明方法通过系统同步sync方法与设置pdflush参数结合的方式解决Linux缓冲机制引起的异常发生时数据丢失问题,在尽量少丢失数据的同时不会使得IO占用过多cpu资源。
【专利说明】
-种监控录像异常的保护方法
技术领域
[0001] 本发明设及视频编辑技术领域,具体的说是一种监控录像异常的保护方法。
【背景技术】
[0002] 监控录像过程通常需要将音视频数据编码后,写入本地媒体文件,本地媒体文件 多采用MP4或者3GP格式。MP4或者3GP格式一般会在音视频流数据写入完成后即录像结束时 生成索引信息并写入文件末尾位置,如果缺少索引信息会导致无法播放,所W在录像过程 中如果有异常情况发生,例如异常断电,存储设备断开连接等情况时,录像文件就会损坏无 法播放。
[0003] 针对异常情况,还有一个问题需要解决,目前监控录像设备多基于Linux系统开 发,Linux系统中会启用缓冲页机制:在应用层向文件写入数据时,写入的数据不会立即写 到存储设备硬件中,而是写到内存缓冲区中,由Linux内核选择合适的时机将内存缓冲区的 内容同步到存储设备硬件中,那么在录像过程中,媒体数据或者索引信息可能只是写到了 内存缓冲区中,而没有写到存储设备硬件中,此时异常情况发生时,会造成数据丢失。

【发明内容】

[0004] 本发明的目的是为了克服上述现有技术的不足之处,提供一种监控录像异常的保 护方法,用W解决监控录像过程中发生异常情况导致视频无法播放W及数据丢失的问题, 在监控录像设备发生异常时,使用本方法录像文件可W直接观看到异常发生前的画面。
[0005] 本发明的目的是通过W下技术措施实现的。
[0006] -种监控录像异常的保护方法,包括W下步骤: (1) 接收到开始录像指令,创建一个空录像文件,向该录像文件中写入头信息ftyp box; (2) 在录像文件紧跟ftyp box后预留索引信息块moov box,根据估算的索引信息块的 大小,预留moov box大小,供后续更新索引信息使用,录像文件索引信息moov box之后的部 分作为媒体数据块mdat box; (3 )开始通过摄像头获取音视频媒体数据,将媒体数据分组打包,此处将间隔时间ΤΙ内 的数据作为一组进行打包,Τ1的取值范围为lOOms-lOs; (4)将上述打包的媒体数据写入录像文件的媒体数据块mdat box; 巧)生成索引信息内容,将索引信息内容写入到录像文件的索引信息块moov box,并更 新媒体数据块mdat box的大小值;每隔时间T2,更新一次索引信息块moov box,T2的取值范 围为 100ms-30s; (6)判断当前录像时长,如果小于2秒,调用系统同步sync函数来保证头信息ftyp box、 索引信息块moov box、媒体数据块mdat box写入到存储设备硬件;如果大于2秒,检查并设 置pdf lush 的参数,设置pdf lush 中 dirty_expire_centi secs和dirty_wri teback_ centisecs的值,取值范围为50-3000; (7)重复执行步骤(3)到步骤(6),直至录像完成。
[0007] 在上述技术方案中,步骤巧)中T2的取值等于T1。
[000引在上述技术方案中,步骤(6)中di;rty_expire_centisecs的取值为150,di;rty_ w;riteback_centisecs 的取值为 100。
[0009]在上述技术方案中,使用本方法生成的MP4文件的结构依次为: 文件头信息ftyp box; 文件索引信息块moov box,紧跟文件头信息ftyp之后; 文件空闲区域free box,为索引信息预留的区域不会全部使用完,未使用的区域作为 free box; 文件媒体数据块mdat box。
[0010]在上述技术方案中,提到的索引倍島块moov box内容如下表所示。
[ΟΟ?] 索引信息块moov box内容
本发明提供了一种监控录像异常的保护方法,针对异常发生时录像文件由于缺少索引 信息而无法播放的问题,在文件开始位置预留索引信息空间,在录像过程中周期性的向预 留的索引信息空间更新录像文件的索引信息,只要录像文件中包含任意一次写入的索引信 息,改录像文件就可W播放。另外,本方法通过系统同步sync方法与设置pdflush参数结合 的方式解决Linux缓冲机制引起的异常发生时数据丢失问题,在尽量少丢失数据的同时不 会使得10占用过多CPU资源。使用本方法后,在录像过程中10占用CPU资源没有明显升高,而 且发生异常情况(例如断电,TF卡拔出)时,存储设备中的录像文件可W直接播放,而且可W 播放到异常情况发生前1秒左右。
【附图说明】
[0012] 图1是本发明方法实施例的流程图。
【具体实施方式】
[0013] 下面结合附图对本发明作进一步详细描述。
[0014] 如图1所示,本发明实施例提供一种监控录像异常的保护方法,包括W下步骤: (1) 接收到开始录像指令,创建一个空录像文件,向该录像文件中写入头信息ftyp box; (2) 在录像文件紧跟ftyp box后预留索引信息块moov box,根据估算的索引信息块的 大小,预留moov box大小,供后续更新索引信息使用,录像文件索引信息moov box之后的部 分作为媒体数据块mdat box; (3 )开始通过摄像头获取音视频媒体数据,将媒体数据分组打包,此处按300ms数据作 为一组进行打包; (4)将上述打包的媒体数据写入录像文件的媒体数据块mdat box; 巧)生成索引信息内容,将索引信息内容写入到录像文件的索引信息块moov box,并更 新媒体数据块mdat box的大小值;由于步骤(3)中媒体数据按300ms进行打包,那么此处为 每300ms执行一次,即每300ms更新索引信息块moov box; (6) 判断当前录像时长,如果小于2秒,调用系统同步sync函数来保证头信息ftyp box、 索引信息块moov box、媒体数据块mdat box写入到存储设备硬件;如果大于2秒,检查并设 置pdf lush 的参数,设置pdf lush 中 dirty_expire_centi secs和dirty_wri teback_ centisecs的值分别为150和100; (7) 重复执行步骤(3)到步骤(6),直至录像完成。
[0015] 在上述实施例中,步骤(6)为可选步骤,即为非必要步骤。
[0016] 在上述实施例中,使用本方法生成的MP4文件的结构依次为: 文件头信息ftyp box; 文件索引信息块moov box,紧跟文件头信息ftyp之后; 文件空闲区域free box,为索引信息预留的区域不会全部使用完,未使用的区域作为 free box; 文件媒体数据块mdat box。
[0017] 在上述实施例中,提到的索引信息块moov box内容如下表所示。
[0〇1引索引信息块moov box内容
本说明书中未作详细描述的内容,属于本专业技术人员公知的现有技术。
【主权项】
1. 一种监控录像异常的保护方法,其特征在于该方法包括以下步骤: (1) 接收到开始录像指令,仓ll建一个空录像文件,向该录像文件中写入头信息ftyp box; (2) 在录像文件紧跟ftyp box后预留索引信息块moov box,根据估算的索引信息块的 大小,预留moov box大小,供后续更新索引信息使用,录像文件索引信息moov box之后的部 分作为媒体数据块mdat box; (3) 开始通过摄像头获取音视频媒体数据,将媒体数据分组打包,此处将间隔时间T1内 的数据作为一组进行打包,Τ1的取值范围为100ms-10s ; (4) 将上述打包的媒体数据写入录像文件的媒体数据块mdat box; (5) 生成索引信息内容,将索引信息内容写入到录像文件的索引信息块moov box,并更 新媒体数据块mdat box的大小值;每隔时间T2,更新一次索引信息块moov box,T2的取值范 围为 100ms_30s; (6) 判断当前录像时长,如果小于2秒,调用系统同步sync函数来保证头信息ftyp box、 索引信息块moov box、媒体数据块mdat box写入到存储设备硬件;如果大于2秒,检查并设 置卩(^111811的参数,设置卩(1;1^111811中(1;[1^_6叉卩;^6_06111:18608和(1;[1^_'\¥1';[七6匕&〇1<_ centisecs的值,取值范围为50-3000; (7) 重复执行步骤(3)到步骤(6),直至录像完成。2. 根据权利要求1所述的监控录像异常的保护方法,其特征是:步骤(5)中T2的取值等 于T1。3. 根据权利要求1所述的监控录像异常的保护方法,其特征是:步骤(6)中dirty_4. 根据权利要求1所述的监控录像异常的保护方法,其特征是该方法生成的MP4文件的 结构依次为: 文件头信息ftyp box; 文件索引信息块moov box,紧跟文件头信息ftyp之后; 文件空闲区域free box,为索引信息预留的区域不会全部使用完,未使用的区域作为 free box; 文件媒体数据块mdat box。
【文档编号】G06F17/30GK105872484SQ201610386218
【公开日】2016年8月17日
【申请日】2016年6月4日
【发明人】刘汝帅, 何川
【申请人】武汉诚迈科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1