《基于H264编码的海量视频数据的存储及检索方法.pdf》由会员分享,可在线阅读,更多相关《基于H264编码的海量视频数据的存储及检索方法.pdf(6页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103780877 A (43)申请公布日 2014.05.07 CN 103780877 A (21)申请号 201310733422.5 (22)申请日 2013.12.26 H04N 7/18(2006.01) G06F 17/30(2006.01) (71)申请人 深圳市华仁达技术有限公司 地址 518000 广东省深圳市南山区科技园北 区北环大道 9116 号 A6 (72)发明人 罗胜朋 范文林 (74)专利代理机构 深圳市兴科达知识产权代理 有限公司 44260 代理人 王翀 (54) 发明名称 基于 h264 编码的海量视频数据的存储及检 索方法 (5。
2、7) 摘要 本发明公开一种基于 h264 编码的海量视频 数据的存储及快速检索方法, 其通过将I帧与P帧 独立存储, 分解录像视频, 并建立 I 帧索引, 大大 提高了海量视频文件的存储及对其进行实时回放 时检索和快速定位的效率。 (51)Int.Cl. 权利要求书 1 页 说明书 3 页 附图 1 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图1页 (10)申请公布号 CN 103780877 A CN 103780877 A 1/1 页 2 1. 一种基于 h264 编码的海量视频数据的存储方法, 其通过以下步骤实现 : S1, 主控服务端。
3、获取录像计划, 并在其存储模块保存当前计划 ; S2, 通过计划向指定的视频源请求视频码流 ; S3, 获取完整视频帧后, 检测是否为 I 帧 ; S4, 如果检测到视频帧为 I 帧, 将 I 帧放入 I 帧存储队列中, 并用 I 帧的时间戳建立一 个 P 帧的存储队列, 将接下来的所有 P 帧放入此存储队列中 ; S5, 在存储了多个 I 帧时, 将 I 帧数据一次性写入 I 帧文件中, 对应的 P 帧队列中所有 数据写入 P 帧文件中, P 帧文件按 I 帧的时间戳存储 ; S6, 每个 I 帧的帧索引全部写入 I 帧索引文件中, P 帧的帧索引写入 P 帧索引文件中 ; S7, 每一定时。
4、间产生一个 I 帧序列文件, 将此文件的 I 帧索引信息上传至主控服务器。 2. 根据权利要求 1 所述的视频文件的存储方法, 其特征在于 : 所述的 S7 中的一定时间 为半个小时。 3. 一种基于权利要求 1 所述的存储方法的检索方法, 包括以下步骤 : S1, 客户端发出实时回放请求, 将请求的摄像头编码发送到主控服务端 ; S2, 主控服务端实时检索本地的文件索引, 将文件位置、 录像和回放服务端 IP 返回给 客户端 ; S3, 客户端通过文件位置及录像和回放服务端的 IP 请求文件播放。 4. 一种基于权利要求 1 所述的存储方法的检索方法, 包括以下步骤 : S1, 客户端请求 。
5、I 帧索引数据按指定时间进行绘图 ; S2, 凭借客户端绘图的 I 帧索引数据向主控服务端进行申请 ; S3, 主控服务端通过文件索引检索到存储服务端 IP 及录像文件位置, 并将检索到的存 储服务端 IP 及录像文件位置信息返回给客户端 ; S4, 客户端通过主控服务端返回的文件位置及绘图的帧索引向录像和回放服务端请求 指定 I 帧或 P 帧 ; S5, 存储服务端通过文件位置获取本地指定的文件帧索引数据, 并进行序列化 ; S6, 将读取到的指定的帧数据回调给客户端。 权 利 要 求 书 CN 103780877 A 2 1/3 页 3 基于 h264 编码的海量视频数据的存储及检索方法 。
6、技术领域 0001 本发明涉及视频监控领域, 特别涉及一种基于 H264 编码的海量视频数据的存储 方法及其对应的检索方法。 背景技术 0002 传统的录像存储技术采用集中式混帧存储方式, 从各个前端采集视频码流以半个 小时或一个小时产生一个文件的方式集中存储, 然后通过具体的请求具体文件逐帧播放的 方式进行检索。 0003 传统文件存储由于采用的集中式统一存储方式, 可以便于文件统一管理及检索, 但同时它也具有很大的局限性, 比如 : 0004 1、 集中存储时, 中心网络承受的巨大的压力 ; 0005 2、 文件以半个小时或一个小时存储时, 拖拽显示视频时响应速度慢 ; 0006 3、 当。
7、录像文件存储大时, 关键帧检索时, 检索效率极其低下 ; 0007 4、 在客户端快速回放时, 需要同时处理 P 帧数据 ; 0008 5、 多个客户端并发请求同一个文件时, 处理极其低下。 0009 这些问题在海量数据时会更加突出, 所以急需解决。 发明内容 0010 本发明提供一种基于 h264 编码的海量视频文件的存储和检索方法, 可以提高实 时回放、 并发请求及关键帧的检索效率。 0011 一种基于 h264 编码的海量视频文件的存储方法, 通过以下步骤实现 : 0012 S1, 主控服务端获取录像计划, 并在存储模块保存当前计划 ; 0013 S2, 通过计划向指定的视频源请求视频码。
8、流 ; 0014 S3, 获取完整视频帧后, 检测是否为 I 帧 ; 0015 S4, 如果检测到视频帧为 I 帧, 将 I 帧放入 I 帧存储队列中, 并用 I 帧的时间戳建 立一个 P 帧的存储队列, 将接下来的所有 P 帧放入此存储队列中 ; 0016 S5, 在存储了多个 I 帧时, 将 I 帧数据一次性写入 I 帧文件中, 对应的 P 帧队列中 所有数据写入 P 帧文件中, P 帧文件按 I 帧的时间戳存储 ; 0017 S6, 每个 I 帧的帧索引全部写入 I 帧索引文件中, P 帧的帧索引写入 P 帧索引文件 中 ; 0018 S7, 每一定时间产生一个I帧序列文件, 将此文件的。
9、I帧索引信息上传至主控服务 器。 0019 优选的, 所述的 S7 中的一定时间为半个小时。 0020 一种基于 h264 编码的海量视频数据的存储方法的检索方法, 通过以下步骤实现 : 0021 S1, 客户端发出实时回放请求, 将请求的摄像头编码发送到主控服务端 ; 0022 S2, 主控服务端实时检索本地的文件索引, 将文件位置和录像与回放服务端的 IP 说 明 书 CN 103780877 A 3 2/3 页 4 返回给客户端 ; 0023 S3, 客户端根据文件位置及录像与回放服务端的 IP 请求文件播放。 0024 一种基于 h264 编码的海量视频数据的存储方法的检索方法, 通过。
10、以下步骤实现 : 0025 S1, 客户端请求 I 帧索引数据按指定时间进行绘图 ; 0026 S2, 凭借客户端绘图的 I 帧索引数据向主控服务端发起申请 ; 0027 S3, 主控服务端通过文件索引检索到存储服务端 IP 及位置, 并将检索到的存储服 务端 IP 及位置信息返回给客户端 ; 0028 S4, 客户端通过主控服务端返回的文件位置及绘图的帧索引向录像和回放服务端 请求指定 I 帧或 P 帧 ; 0029 S5, 存储服务端通过文件位置获取本地指定的文件帧索引数据, 并进行序列化 ; 0030 S6, 将读取到的指定的帧数据回调给客户端。 0031 以上实现的基于h264编码的海。
11、量视频文件的存储和检索方法, 通过将I帧索引与 I帧分开存储, I帧与P帧相互独立存储, 分解录像计划, 大大提高了海量视频文件的存储及 对其进行实时回放、 快速定位的检索效率。 附图说明 0032 图 1 为存储方法及实时回放检索的实现过程示意图 ; 0033 图 2 为快速检索的实现过程示意图。 0034 发明内容 0035 以下将结合附图对本发明的存储方法及检索方法进行详细描述。如图 1 所示 : 基 于 h264 编码的海量视频文件的存储方法及实时回放检索实现过程为, 主控服务端获取录 像计划, 并将所述的录像计划保存在存储模块 ; 通过所述的录像计划向指定的流媒体服务 端请求视频码流。
12、 ; 具体来讲, 主控服务端从系统数据库获得录像计划, 将录像计划发送到录 像与回放服务端, 录像与回放服务端对录像计划进行分解后等待接收码流以便进行录像 ; 与此同时, 主控服务端向流媒体服务端发送开启指定摄像机的指令, 流媒体服务端打开摄 像机, 获取码流 ; 等待到计划时间节点后, 录像与回放服务端向流媒体服务端请求码流。 0036 存储服务端获取完整视频帧后, 实时检测码流是否为I帧 ; 在检测第一帧非I帧的 情况下, 将不予保留, 直到检测到第一帧为 I 帧后, 将 I 帧放入 I 帧存储队列中, 并用 I 帧的 时间戳建立一个 P 帧的存储队列, 将接下来的 P 帧存储到前面按 I。
13、 帧的时间戳建立的 P 帧 队列中 ; 在存储了多个 I 帧时, 将 I 帧数据一次性写入 I 帧文件中, 对应的 P 帧队列中所有 数据写入 P 帧文件中 ; 每个 I 帧的帧索引全部写入 I 帧索引文件中, P 帧的帧索引写入 P 帧 索引文件中, 达到索引分类存储的目的 ; 每过一定时间产生一个文件, 优选为半个小时产生 一个文件, 然后将此文件的 I 帧索引信息上传至主控服务器。 0037 当客户端发起实时回放的请求, 则将请求的摄像头编码发送到主控服务端 ; 主控 服务端实时检索本地的文件索引, 将文件位置、 录像与回放服务端的 IP 反馈给客户端 ; 客 户端则根据文件位置及录像与。
14、回放服务端的 IP 执行文件播放, 完成录像回放。 0038 如果客户端发起的是快速检索的请求, 则客户端请求 I 帧索引数据, 按指定时间 进行绘图, 即绘制时间戳控件 ; 凭借客户端绘图的 I 帧索引数据向主控服务端发起申请 ; 主 控服务端通过文件索引检索到存储服务端 IP 及位置, 并将检索到的存储服务端 IP 及位置 说 明 书 CN 103780877 A 4 3/3 页 5 信息返回给客户端 ; 客户端根据主控服务端返回的文件位置及绘图的帧索引向录像与回放 服务端请求指定I帧或P帧 ; 然后存储服务端通过文件位置获取本地指定的帧索引数据, 然 后进行序列化并将读取到指定的帧数据反。
15、馈给客户端。 0039 更具体来讲, 如图 2 所示 : 客户端向主控服务端获取单个文件信息, 主控服务端检 索本地文件索引位置, 将获取的录像和回放服务端的 IP、 录像文件位置反馈回客户端, 客户 端通过反馈回来的文件信息, 即录像和回放服务端的 IP、 录像文件位置信息, 向指定 IP 的 录像和回放服务端获取 I 帧索引信息, 即单个文件帧总数, 然后客户端通过指定时间段从 存储服务端获取到 I 帧的文件列表信息, 并根据 I 帧索引信息绘制时间戳控件。然后客户 端发起请求指定 I 帧所属文件位置, 主控服务端检索本地索引, 返回文件信息及 IP, 客户端 根据指定 I 帧索引, 录像与回放服务端检索本地帧文件索引, 获取指定位置, 读取到相关数 据, 返回 I 帧数据给客户端进行解码显示, 并通过该 I 帧索引获取关联 P 帧数据队列继续播 放。 0040 通过以上方法实现的存数方法及相应的检索方法, 可以使用户提高实时回放、 关 键帧快速预览的检索效率。 说 明 书 CN 103780877 A 5 1/1 页 6 图 1 图 2 说 明 书 附 图 CN 103780877 A 6 。