[发明专利]一种监控录像异常的保护方法有效
申请号: | 201610386218.4 | 申请日: | 2016-06-04 |
公开(公告)号: | CN105872484B | 公开(公告)日: | 2017-07-21 |
发明(设计)人: | 刘汝帅;何川 | 申请(专利权)人: | 武汉诚迈科技有限公司 |
主分类号: | H04N7/18 | 分类号: | H04N7/18;H04N5/76;G06F17/30 |
代理公司: | 武汉天力专利事务所42208 | 代理人: | 吴晓颖 |
地址: | 430074 湖北省武汉市东湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 监控 录像 异常 保护 方法 | ||
技术领域
本发明涉及视频编辑技术领域,具体的说是一种监控录像异常的保护方法。
背景技术
监控录像过程通常需要将音视频数据编码后,写入本地媒体文件,本地媒体文件多采用MP4或者3GP格式。MP4或者3GP格式一般会在音视频流数据写入完成后即录像结束时生成索引信息并写入文件末尾位置,如果缺少索引信息会导致无法播放,所以在录像过程中如果有异常情况发生,例如异常断电,存储设备断开连接等情况时,录像文件就会损坏无法播放。
针对异常情况,还有一个问题需要解决,目前监控录像设备多基于Linux系统开发,Linux系统中会启用缓冲页机制:在应用层向文件写入数据时,写入的数据不会立即写到存储设备硬件中,而是写到内存缓冲区中,由Linux内核选择合适的时机将内存缓冲区的内容同步到存储设备硬件中,那么在录像过程中,媒体数据或者索引信息可能只是写到了内存缓冲区中,而没有写到存储设备硬件中,此时异常情况发生时,会造成数据丢失。
发明内容
本发明的目的是为了克服上述现有技术的不足之处,提供一种监控录像异常的保护方法,用以解决监控录像过程中发生异常情况导致视频无法播放以及数据丢失的问题,在监控录像设备发生异常时,使用本方法录像文件可以直接观看到异常发生前的画面。
本发明的目的是通过以下技术措施实现的。
一种监控录像异常的保护方法,包括以下步骤:
(1)接收到开始录像指令,创建一个空录像文件,向该录像文件中写入头信息ftyp box;
(2)在录像文件紧跟ftyp box后为索引信息预留一定区域,该区域根据估算的索引信息块moov box的大小预留,供后续更新索引信息使用,更新索引信息后,该预留区域中未使用的部分作为文件空闲区域free box,文件空闲区域free box之后的部分作为媒体数据块mdat box;
(3)开始通过摄像头获取音视频媒体数据,将媒体数据分组打包,此处将间隔时间T1内的数据作为一组进行打包,T1的取值范围为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秒,检查并设置pdflush的参数,设置pdflush中dirty_expire_centisecs和dirty_writeback_centisecs的值,取值范围为50-3000;
(7)重复执行步骤(3)到步骤(6),直至录像完成。
在上述技术方案中,步骤(5)中T2的取值等于T1。
在上述技术方案中,步骤(6)中dirty_expire_centisecs的取值为150,dirty_writeback_centisecs的取值为100。
在上述技术方案中,使用本方法生成的MP4文件的结构依次为:
文件头信息ftyp box;
文件索引信息块moov box,紧跟文件头信息ftyp box之后;
文件空闲区域free box,为索引信息预留的区域不会全部使用完,未使用的区域作为free box;
文件媒体数据块mdat box。
在上述技术方案中,提到的索引信息块moov box内容如下表所示。
索引信息块moov box内容
本发明提供了一种监控录像异常的保护方法,针对异常发生时录像文件由于缺少索引信息而无法播放的问题,在文件开始位置预留索引信息空间,在录像过程中周期性的向预留的索引信息空间更新录像文件的索引信息,只要录像文件中包含任意一次写入的索引信息,改录像文件就可以播放。另外,本方法通过系统同步sync方法与设置pdflush参数结合的方式解决Linux缓冲机制引起的异常发生时数据丢失问题,在尽量少丢失数据的同时不会使得IO占用过多cpu资源。使用本方法后,在录像过程中IO占用CPU资源没有明显升高,而且发生异常情况(例如断电,TF卡拔出)时,存储设备中的录像文件可以直接播放,而且可以播放到异常情况发生前1秒左右。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉诚迈科技有限公司,未经武汉诚迈科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610386218.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:珠宝玉石用多功能电子称
- 下一篇:一种海产品冻干在线称重装置