录像 和 录像搜索思考。
---- 关键是录像索引文件的管理,记录文件对应时间的I帧的在硬盘分区中的偏移位置,考虑如果硬盘有坏道的情况,以及I帧率位置记录。
1、录像文件写入的思考:
如果通道开启录像,录像记录方式:
一个通道创建一个大的文件为4G,文件名称为通道号加上日期时间到分钟如01_201510212115.st(通道1,时间为2015-10-21:21:15分 ),
如果如果录像大于4G 再创建一个类似的文件。
文件offset 记录文件名次和视频名次前缀一样如01_201510212115.index,可以5s(也可以1s,10s 这个时间就是后面录像搜索的时间精度)记录一个该录像的文件偏移位置。
文件类型记录(在记录offset的时候 同时记录类型,如motion ,time)
01_201510212115.index记录格式如:
20151021211520_01_xxxx_ (xxxx 表示4个字节的2进制存放 ,表示文件的位置,加上\n 这样一行所以一共24字节)
如果觉得24字节太多可以把时间存储为2进制,去掉一些分隔符合等。
####################
bformat=0 0 表示没格式化,1表示被格式化
filesize=xxxx 表示对应录像文件的大小值
20151021211520_01_2EFE_ (分别是时间精确到秒,类型01如表示为定时,偏移位置 )
20151021211525_01_4A38_
20151021211530_01
---- 关键是录像索引文件的管理,记录文件对应时间的I帧的在硬盘分区中的偏移位置,考虑如果硬盘有坏道的情况,以及I帧率位置记录。
1、录像文件写入的思考:
如果通道开启录像,录像记录方式:
一个通道创建一个大的文件为4G,文件名称为通道号加上日期时间到分钟如01_201510212115.st(通道1,时间为2015-10-21:21:15分 ),
如果如果录像大于4G 再创建一个类似的文件。
文件offset 记录文件名次和视频名次前缀一样如01_201510212115.index,可以5s(也可以1s,10s 这个时间就是后面录像搜索的时间精度)记录一个该录像的文件偏移位置。
文件类型记录(在记录offset的时候 同时记录类型,如motion ,time)
01_201510212115.index记录格式如:
20151021211520_01_xxxx_ (xxxx 表示4个字节的2进制存放 ,表示文件的位置,加上\n 这样一行所以一共24字节)
如果觉得24字节太多可以把时间存储为2进制,去掉一些分隔符合等。
####################
bformat=0 0 表示没格式化,1表示被格式化
filesize=xxxx 表示对应录像文件的大小值
20151021211520_01_2EFE_ (分别是时间精确到秒,类型01如表示为定时,偏移位置 )
20151021211525_01_4A38_
20151021211530_01