专利名称:嵌入式硬盘录像机的录像文件定位方法
技术领域:
本发明涉及视频监控的技术领域,具体说是一种嵌入式硬盘录像机的录像文件定位方法。
背景技术:
嵌入式硬盘录像机设备一般分为嵌入式硬盘录像机DVR、嵌入式网络视频录像机NVR和混合型DVR。嵌入式硬盘录像机DVR是一种能够连接模拟摄像机、球机等模拟采集其视频信号进行本地输出回放以及视频编码本地存储、网络实时视频传播的嵌入式网络视频设备。嵌入式网络视频录像机NVR是一种能够连接和控制网络网络摄像机IPC前端,将IPC传来的视频数据进行本地存储以及网络转发,并解码在NVR设备的输出接口上显示IPC所采集的实时视频信号的设备。嵌入式混合型DVR是嵌入式DVR与NVR功能全体的嵌入式硬盘录像机设备。嵌入式DVR、NVR、混合型DVR的视频输入包括CVBS接口的模拟视频输入及通过网络传送过来的数字视频输入。随着安全防范、视频监控行业的不断发展,数字视频监控的发展速度越来越快,近几年不仅传统的嵌入式DVR取得了长足发展,而且嵌入式NVR、混合型DVR等新设备也应运而生。随之而来的,由于用户对视频监控的清晰度要求越来越高,对录像文件的保存时长也有了更高的要求,导致数字视频存储设备的容量也出现了爆发式地增长。对于设备开发者来说,如何能让用户在海量的数据中迅速、准确找到自己想要的数据,成了一个新的课题。嵌入式硬盘录像机类设备为方便用户查询录像,都会在录像的同时,取录像的关键信息,如录像通道、录像开始时间、录像结束时间、录像类型、录像文件名等关键信息等编制索引,这样就可以在用户查询时根据不同条件组合快速定位到某一个文件。为防止录像文件过多导致查询录像时间太长,一般都会对录像文件进行分包处理,大多数应用场合都采用30分钟 I小时为一个包(即录像文件)。这样做存在的问题是用户在查询录像时,都希望能快速而且准确地找到从某一秒开始的数字视频数据,而这种传统的索引方法只能带来30分钟的精度,明显不能满足用户需求。
发明内容
本发明要解决的技术问题是提供一种嵌入式硬盘录像机的录像文件定位方法。本发明为解决公知技术中存在的技术问题所采取的技术方案是
本发明的嵌入式硬盘录像机的录像文件定位方法,包括以下步骤
A、经由模拟摄像机和网络摄像机采集到的视频数据码流进入嵌入式硬盘录像机的主控制器;
B、在数字视频码流中封装当前时间如果是由模拟摄像机接入,并经过编码后的数字视频流,则直接对视频进行封装;如果是通过网络摄像机输入的数字视频流,则先进行标准化,去掉原有视频流的封装,再进行封装;封装时由编码器提供的私有接口加入当前时间,封装后的视频流排布格式如下私有帧头、当前时间、标准视频数据、标准音频数据;
C、在录像的同时编制文件内部索引,且仅对关键帧编制索引,在读入一帧封装后的视音频数据后,先判断该帧视音频数据是否为关键帧,如果是关键帧则将该关键帧信息写入索引,包括当前时间及关键帧在文件中的位置,将视音频数据写入文件;如果该帧不是关键帧则读入下一帧封装后的视音频数据;
D、将索引帧写入文件,在对文件 进行打包时,将该索引记入文件尾,并将其伪装为一个视频帧,在文件尾记录该帧的起始位置,封装后的索引帧排布格式如下私有帧头、当前时间、索引帧数据、索引帧在文件中的起始位置。本发明具有的优点和积极效果是
本发明的嵌入式硬盘录像机的录像文件定位方法,在回放时已经定位到一个具体文件后,先将索引帧读入内存,由于在文件尾已经标识了索引帧在文件中的位置,省去了查找索引帧的过程。由于在索引帧中已经记录了所有关键帧的时间及在文件中的位置,通过遍历索引,即可快速定位到待查找的时间点所对应的关键帧。同时在解码每一帧时,可以通过解码器提供的私有接口,从该帧数据中提取出其编码时间,从而实现每一帧时间的准确、实时显示。本发明采用录像文件内部索引技术,在不影响录像性能的前提下,极大提高了回放时定位的速度、精度,并通过对码流进行封装实现实时进度显示,为用户使用提供了便利。
图1是本发明的嵌入式硬盘录像机的录像文件定位方法中数据传输的示意 图2是本发明的嵌入式硬盘录像机的录像文件定位方法中关键帧编制的流程图。
具体实施例方式以下参照附图及实施例对本发明进行详细的说明。图1是本发明的嵌入式硬盘录像机的录像文件定位方法中数据传输的示意图;图2是本发明的嵌入式硬盘录像机的录像文件定位方法中关键帧编制的流程图。如图1和图2所示,本发明的嵌入式硬盘录像机的录像文件定位方法,包括以下步骤
A、经由模拟摄像机和网络摄像机采集到的视频数据码流进入嵌入式硬盘录像机的主控制器,模拟摄像机采集到的信号经过Α/D转换器和编码器进入到主控器,而网络摄像机采集到的信号直接进入主控制器;
B、在数字视频码流中封装当前时间如果是由模拟摄像机接入,并经过编码后的数字视频流,则直接对视频进行封装;如果是通过网络摄像机输入的数字视频流,则先进行标准化,去掉原有视频流的封装,再进行封装;封装时由编码器提供的私有接口加入当前时间,封装后的视频流排布格式如下私有帧头、当前时间、标准视频数据、标准音频数据;
C、在录像的同时编制文件内部索引,且仅对关键帧编制索引,由于对所有视频帧进行编制会占用较大磁盘空间,而且并非所有帧都能在回放时直接进行解码,因而在读入一帧封装后的视音频数据后,先判断该帧视音频数据是否为关键帧,如果是关键帧则将该关键帧信息写入索引,包括当前时间及关键帧在文件中的位置,将视音频数据写入文件;如果该帧不是关键帧则读入下一帧封装后的视音频数据; D、将索引帧写入文件,由于音视频数据都是实时写入硬盘,而文件内部索引是在内存中进行编制,所以在对文件进行打包时,将该索引记入文件尾,并将其伪装为一个视频帧,称之为索引帧,这样做是为了保持和已有录像文件的兼容。为保证可以快速找到该帧,在文件尾记录该帧的起始位置,封装后的索引帧排布格式如下私有帧头、当前时间、索引帧数据、索引帧在文件中的起始位置。本发明可实现以下功能
回放时读取索引帧在已经定位到一个具体文件后,先将索引帧读入内存。由于在文件尾已经标识了索引帧在文件中的位置,省去了查找索引帧的过程。回放时通过文件内部索引快速、准确定位在索引帧中已经记录了所有关键帧的时间及在文件中的位置,通过遍历索引,即可快速定位到待查找的时间点所对应的关键帧。回放时实时显示录像时间在解码每一帧时,可以通过解码器提供的私有接口,从该帧数据中提取出其编码时间,从而实现每一帧时间的准确、实时显示。以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例公开如上,然而,并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当然会利用揭示的技术内容作出些许更动或修饰,成为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均属于本发明技术方案的范围内。
权利要求
1.一种嵌入式硬盘录像机的录像文件定位方法,包括以下步骤 A、经由模拟摄像机和网络摄像机采集到的视频数据码流进入嵌入式硬盘录像机的主控制器; B、在数字视频码流中封装当前时间如果是由模拟摄像机接入,并经过编码后的数字视频流,则直接对视频进行封装;如果是通过网络摄像机输入的数字视频流,则先进行标准化,去掉原有视频流的封装,再进行封装;封装时由编码器提供的私有接口加入当前时间,封装后的视频流排布格式如下私有帧头、当前时间、标准视频数据、标准音频数据; C、在录像的同时编制文件内部索引,且仅对关键帧编制索引,在读入一帧封装后的视音频数据后,先判断该帧视音频数据是否为关键帧,如果是关键帧则将该关键帧信息写入索引,包括当前时间及关键帧在文件中的位置,将视音频数据写入文件;如果该帧不是关键帧则读入下一帧封装后的视音频数据; D、将索引帧写入文件,在对文件进行打包时,将该索引记入文件尾,并将其伪装为一个视频帧,在文件尾记录该帧的起始位置,封装后的索引帧排布格式如下私有帧头、当前时间、索引帧数据、索引帧在文件中的起始位置。
全文摘要
一种嵌入式硬盘录像机的录像文件定位方法,包括以下步骤经由模拟摄像机和网络摄像机采集到的视频数据码流进入嵌入式硬盘录像机的主控制器;在数字视频码流中封装当前时间;在录像的同时编制文件内部索引,且仅对关键帧编制索引;将索引帧写入文件,在对文件进行打包时,将该索引记入文件尾,并将其伪装为一个视频帧,在文件尾记录该帧的起始位置。本发明采用录像文件内部索引技术,在不影响录像性能的前提下,极大提高了回放时定位的速度、精度,并通过对码流进行封装实现实时进度显示,为用户使用提供了便利。
文档编号G11B27/10GK103065660SQ20121053069
公开日2013年4月24日 申请日期2012年12月11日 优先权日2012年12月11日
发明者戴林, 宇德志, 陶永亮 申请人:天津天地伟业数码科技有限公司