首页> 中国专利> 一种动态分配缓存容量的方法以及装置

一种动态分配缓存容量的方法以及装置

摘要

本发明提供一种动态分配缓存容量的方法,应用于数据管理服务器,其中包括:获取回放视频资源所在阵列的状态信息,根据所述状态信息设置阵列IO处理能力系数;检测所述回放视频的回放倍速,并确定出所述回放视频的码率;根据所述回放倍速、码率、阵列IO处理能力系数以及预设的基础缓存值计算出为所述回放视频分配的缓存容量。本发明可为回放视频动态分配缓存容量,在满足回放视频对缓存容量要求的同时还有效降低了资源的浪费。

著录项

  • 公开/公告号CN103929608A

    专利类型发明专利

  • 公开/公告日2014-07-16

    原文格式PDF

  • 申请/专利权人 浙江宇视科技有限公司;

    申请/专利号CN201410153810.0

  • 发明设计人 陈继芬;许勇;石岩;

    申请日2014-04-16

  • 分类号H04N5/76;H04N7/18;G06F3/06;

  • 代理机构北京博思佳知识产权代理有限公司;

  • 代理人林祥

  • 地址 310051 浙江省杭州市滨江区西兴街道江陵路88号10幢南座1-11层

  • 入库时间 2023-12-17 00:40:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-16

    授权

    授权

  • 2014-09-17

    实质审查的生效 IPC(主分类):H04N5/76 申请日:20140416

    实质审查的生效

  • 2014-07-16

    公开

    公开

说明书

技术领域

本发明涉及监控技术领域,尤其涉及一种动态分配缓存容量的方法以 及装置。

背景技术

视频监控技术由于其真实性、可靠性、广泛性等优点在安防、交通、 金融、教育等各行各业得到了广泛的应用和迅速的发展。视频监控的数字 化的视频数据除了用于实时监控,还可以将监控视频先存储起来,供后续 的回放。

现有技术中,在回放视频时为每路回放视频分配的缓存容量都是固定 的大小,回放数据预取的启动条件也是固定值。这种情况下假设为每路回 放开启的缓存大小都是固定的4MB,回放数据预取的启动条件也是固定值, 如50%时,对每路回放无论码率是多少,是多少倍速的回放,回放资源所 在阵列IO处理能力如何,开启的缓存大小都是固定不变的,这样的分配方 式在低码率,低倍速,阵列IO处理能力较强的情况下,分配4MB的缓存 就有些浪费资源;相反在高码率,高倍速,阵列IO处理能力较差的情况下, 分配4MB的缓存又可能出现阵列IO处理时来不及返回而导致回放卡顿。

发明内容

有鉴于此,本发明提供了一种动态分配缓存容量的方法以及装置来解 决上述问题。

本发明提供的动态分配缓存容量的方法,应用于数据管理服务器,其 中包括:

获取回放视频资源所在阵列的状态信息,根据所述状态信息设置阵列 IO处理能力系数;

检测所述回放视频的回放倍速,并确定出所述回放视频的码率;

根据所述回放倍速、码率、阵列IO处理能力系数以及预设的基础缓存 值计算出为所述回放视频分配的缓存容量。

本发明还提供一种动态分配缓存容量的装置,应用于数据管理服务器, 其中包括:

阵列状态获取单元,用于获取回放视频资源所在阵列的状态信息,根 据所述状态信息设置阵列IO处理能力系数;

回放信息检测单元,用于检测所述回放视频的回放倍速,并确定出所 述回放视频的码率;

缓存容量计算单元,用于根据所述回放倍速、码率、阵列IO处理能力 系数以及预设的基础缓存值计算出为所述回放视频分配的缓存容量。

本发明提供的动态分配缓存容量的方法通过设置回放视频资源阵列IO 处理能力系数,并获取所述回放视频的回放倍速、码率,根据所述回放倍 速、码率、阵列IO处理能力系数以及预设的基础缓存值计算出为所述回放 视频分配的缓存容量。由此可见,本发明可为回放视频动态分配缓存容量, 在满足回放视频对缓存容量要求的同时还有效降低了资源的浪费。

附图说明

图1是本发明实施例中动态分配缓存容量装置逻辑结构示意图;

图2是本发明实施例中动态分配缓存容量方法流程框图;

图3是本发明实施例中动态分配缓存容量方法工作流程图。

具体实施方式

现有技术中,由于回放视频的码率、回放倍数以及阵列IO处理能力的 不稳定性,为回放视频分配固定的缓存容量通常会导致要么由于缓存容量 分配过高造成资源浪费,或者由于缓存容量分配过低造成回放视频卡顿的 问题。针对上述问题本发明提供了一种动态分配缓存容量的方法以及装置, 应用于数据管理服务器。其通过获取回放视频资源所在阵列的状态信息, 根据所述状态信息设置阵列IO处理能力系数,并获取所述回放视频的回放 倍速以及码率,最后根据所述回放倍速、码率、阵列IO处理能力系数以及 预设的基础缓存值计算出为所述回放视频分配的缓存容量。

请参考图1,本发明提供的视频数据内容收集装置应用于数据管理服务 器,该装置的基本硬件环境包括CPU、内存、非易失性存储器以及其他硬 件,其从本质上说是一个逻辑装置。在本实施方式中,该动态分配缓存容 量的装置在逻辑层面上包括:阵列状态获取单元、回放信息检测单元以及 缓存容量计算单元,请参考图2,该装置在运行过程中执行如下处理流程:

步骤201,阵列状态获取单元获取回放视频资源所在阵列的状态信息, 根据所述状态信息设置阵列IO处理能力系数;

步骤202,回放信息检测单元检测所述回放视频的回放倍速,并确定出 所述回放视频的码率;

步骤203,缓存容量计算单元根据所述回放倍速、码率、阵列IO处理 能力系数以及预设的基础缓存值计算出为所述回放视频分配的缓存容量。

视频监控的数字化的视频数据除了用于实时监控,还可以将监控视频 先存储起来,以供后续的回放。请参考图3,在用户启动视频回放业务时, 所述阵列状态获取单元获取用户所启动的回放视频资源所在阵列的状态信 息,该阵列信息可以包括以下四种状态:企业磁盘,阵列未重建且未同步; 监控磁盘,阵列未重建且未同步;企业磁盘,阵列在重建或者同步;监控 磁盘,阵列在重建或者同步。获取该回放视频阵列状态具体通过查询该回 放视频所对应的SAN(存储区域网络)资源名称,并创建TCP套接字,将 该SAN资源名称填充至该TCP套接字中通过TCP报文发送至与所述数据 管理服务器通信连接的存储设备。存储设备在接收到携带有SAN资源名称 的TCP报文后,根据SAN资源名称查找该回放视频资源所在阵列的状态信 息,并将查找到的回放视频资源所在阵列状态信息填充至TCP套接字中通 过TCP报文进行回复。

阵列状态获取单元接收到存储设备回复的TCP报文后,解析出该TCP 报文中携带的回放视频资源阵列状态信息,根据该状态信息设置阵列IO处 理能力系数。根据获取的状态信息设置阵列IO处理能力系数可以参考表1 所示:

阵列状态信息 阵列IO处理能力系数 企业磁盘,阵列未重建且未同步 0.25 监控磁盘,阵列未重建且未同步 0.5 企业磁盘,阵列在重建或者同步 0.5 监控磁盘,阵列在重建或者同步 1

表1

表1为回放视频资源所在阵列状态信息与阵列IO处理能力系数对应关 系表项,在解析出TCP报文中携带的回放视频资源阵列状态信息,可根据 表1设置该回放视频的阵列IO处理能力系数。由于企业磁盘通常较监控磁 盘的阵列IO处理能力弱,因此在设置阵列IO处理能力系数时,可以将监 控磁盘的阵列IO处理能力系数设置的比监控磁盘的阵列IO处理能力系数 较高,以提供稳定的阵列IO处理能力。该阵列IO处理能力系数可由开发 人员设置,本发明对此并无限制。

另外,在阵列状态信息发生变化时,则会触发存储设备向阵列状态获 取单元发送携带当前阵列状态信息以及SAN资源名称的TCP报文,在接收 到该状态变化的报文时,根据该阵列状态信息重新调整与报文中携带的 SAN资源名称对应的阵列IO处理能力系数。

接着,回放信息检测单元检测用户启动回放视频时选择的回放倍速, 所述回放倍速则根据用户的选择决定,例如用户选择了1倍速回放,那么 该回放倍速则为1,若用户选择了2倍速回放,那么该回放倍速则为2。

同时,回放信息检测单元确定出该回放视频的码率。由于码率只有在 回放视频播放后根据读取的I帧组解析得出,在回放视频播放前无法得出准 确的码率,因此本发明实施例中在回放视频播放前,可以预先设置预设码 率值作为初始码率,在本发明实施例中可以将该预设的码率设置为8,并根 据该预设的码率8计算为回放视频分配的缓存容量。将预设的码率设置为8, 虽然会暂时占用较多的资源,但是可以保证回放视频的正常播放。当然, 该预设的码率也可由开发人员设置,本发明对此并无限制。

在回放视频播放之后,读取所述回放视频的一个I帧组,根据所述I帧 组12字节头中解析出当前的码率。

本发明实施方式中,在计算为回放视频分配的缓存容量时,还要设置 基础缓存值。在本发明实施例中,考虑到至少要为所述回放视频分配可满 足播放条件的缓存容量,可以将该基础缓存值的默认值设置为0.25M进行 计算,同时该基础缓存值也可根据需要进行调整。

另外,需要说明的是,所述步骤201以及步骤202之间并没有严格的 顺序关系,本发明实施方式中也可以在确定回放倍速、码率以及预设的基 础缓存值后,获取回放视频资源所在阵列的状态信息,根据状态信息设置 阵列IO处理能力系数;也可以同时设置阵列IO处理能力系数、回放倍速、 码率以及预设的基础缓存值,本发明对此并无限制。

在得到上述的阵列IO处理能力系数、回放倍速、码率以及预设的基础 缓存值后,则可根据阵列IO处理能力系数、回放倍速、码率以及预设的基 础缓存值计算出为所述回放视频分配的缓存容量。本发明实施方式中,为 回放视频分配缓存容量的计算方式为:

W=B*M*S*R

其中,W为回放视频分配的缓存容量,B为预设的基础缓存值,M为 码率,S为回放倍速,R为阵列IO处理能力系数。

示例性地,在回放视频播放前,假设阵列IO处理能力系数R根据阵列 状态信息设置为0.5,回放倍速S为2,码率M为预设码率8,预设的基础 缓存值为0.25,那么为该回放视频分配的缓存容量W则为2M (0.5*2*8*0.25)。

在回放视频播放后,假设阵列IO处理能力系数R根据阵列状态信息设 置为0.5,回放倍速S为2,码率M为解析出的6,预设的基础缓存值为0.25, 那么为该回放视频分配的缓存容量W则为1.5M(0.5*2*6*0.25)。

进一步地,为防止在回放视频码率过小、阵列IO处理能力系数较小时 为回放视频分配过低的缓存容量,本发明实施方式通过为回放视频设置最 小缓存配额以保证在缓存时至少能有可播放2s的视频数据。因此在本发明 实施例中,若所述为回放视频分配的缓存容量小于所述最小缓存配额,则 使用所述最小缓存配额作为缓存容量;若所述为回放视频分配的缓存容量 大于或者等于所述最小缓存配额,则使用所述为回放视频分配的缓存容量 作为缓存容量。

该最小缓存配额为预设的固定值或者为与码率相关的值,若该最小缓 存配额为与码率相关的值时,其计算方法可以为:

Wmin=(M/8)*2

其中Wmin为最小缓存配额,M为码率。假设码率M为6,那么该最 小缓存配额则为1.5M。

假设根据W=B*M*S*R计算出为回放视频分配的缓存容量为1M,最 小缓存配额为1.5M,那么为回放视频分配的缓存容量为最小缓存配额1.5M;

假设根据W=B*M*S*R计算出为回放视频分配的缓存容量为1.5M,最 小缓存配额为1.5M,那么为回放视频分配的缓存容量为根据W=B*M*S*R 计算出的缓存容量1.5M。

假设根据W=B*M*S*R计算出为回放视频分配的缓存容量为2M,最 小缓存配额为1.5M,那么为回放视频分配的缓存容量为根据W=B*M*S*R 计算出的缓存容量2M。

进一步地,本发明提供的动态分配缓存容量装置,在检测到所述回放 倍速、码率、阵列IO处理能力系数以及预设的基础缓存值的至少一项发生 变化时,则重新计算为所述回放视频分配的缓存容量。

在为回放视频分配缓存容量后,仍会实时监测回放视频的回放倍速、 码率、阵列IO处理能力系数以及预设的基础缓存值。在检测到任意一项或 多项发生变化时,则重新计算为所述回放视频分配的缓存容量,并且在码 率变化时,还要重新计算该回放视频的最小缓存配额,同时判断为回放视 频分配的缓存容量是否小于最小缓存配额,并按照判断结果为所述回放视 频分配缓存容量。

综上所述,本发明提供了一种动态分配缓存容量的方法以及装置,通 过获取回放视频资源所在阵列的状态信息,根据所述状态信息设置阵列IO 处理能力系数,并在获取到所述回放视频的回放倍速以及码率后,根据所 述回放倍速、码率、阵列IO处理能力系数以及预设的基础缓存值为回放视 频动态分配缓存容量。本发明在满足回放视频对缓存容量要求的同时还有 效降低了缓存资源的浪费。另外通过为回放视频设置最小缓存配额可有效 避免在码率过小或者阵列IO处理能力系数较小时为回放视频分配过低缓存 容量的问题。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡 在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均 应包含在本发明保护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号