公开/公告号CN105159711A
专利类型发明专利
公开/公告日2015-12-16
原文格式PDF
申请/专利权人 山东康威通信技术股份有限公司;
申请/专利号CN201510549100.4
申请日2015-08-31
分类号G06F9/445(20060101);H04N7/18(20060101);
代理机构37221 济南圣达知识产权代理有限公司;
代理人张勇
地址 250101 山东省济南市高新技术开发区舜华路1号齐鲁软件园F-1座A203
入库时间 2023-12-18 12:59:36
法律状态公告日
法律状态信息
法律状态
2019-05-17
授权
授权
2016-01-13
实质审查的生效 IPC(主分类):G06F9/445 申请日:20150831
实质审查的生效
2015-12-16
公开
公开
技术领域
本发明涉及一种动态扩展接入新种类视频的系统及方法。
背景技术
在安防视频监控领域,经常需要集成多个厂家、多个版本的监控视频。虽已通过多层抽 象技术解决了多种类视频接入问题,但随着时间的推移和应用场合的不同,这些视频的种类 在系统中越聚越多。继而带来许多新问题:系统运行时附加载入的文件(视频厂家提供的SDK) 越来越多,需要维护的接口和变量越来越多,系统变得越来越臃肿。每接入一新种类的视频, 上层应用都需要做相应的修改,以便适配接入,上层应用和中间抽象层产生了不必要的耦合。
发明内容
本发明为了解决上述问题,提出了一种动态扩展接入新种类视频的系统及方法,本方法 在上层应用和中间抽象层之间增加一个动态扩展接入模块,此模块负责在上层应用和中间抽 象层之间动态调度接口,上层应用只需向其发起查询即可得到接口,无需自身再做适配。此 种方式可有效减少上层应用和中间抽象层之间的耦合,又可以为系统运行时瘦身,减轻运行 时负担,提高运行效率。
为了实现上述目的,本发明采用如下技术方案:
一种动态扩展接入新种类视频的系统,包括底层访问模块、动态调度模块、中间抽象层 和上层应用层,其中:
所述底层访问模块有多个,每个都有一个全局唯一的编码,用于向动态调度模块申请注 册信息以注册自身;
所述中间抽象层,处于上层应用和底层访问模块之间,是为上层应用和底层模块之间交 互而定义的COM组件,定义为上层应用和底层访问模块交互的标准;
所述动态调度模块,用于记录底层模块的注册信息,并向上层应用层公开查询接口;
所述上层应用层,用于向动态调度模块发送查询指令,查询本地缓存数据,如果上层应 用层需要的接口前期已被载入,则直接返回接口;否则,动态载入底层访问模块,初始化参 数,生成接口,缓存,最终向上层应用层返回结果。
一种基于上述系统的方法,包括以下步骤:
(1)底层访问模块向动态调度模块申请注册自身,发送注册信息;
(2)动态调度模块记录底层模块的注册信息,并向上层应用层公开查询接口;
(3)上层应用层通过动态调度模块公开的注册列表查询到调用入口,并向动态调度模 块发起查询指令;
(4)动态调度模块根据上层应用层发来的查询指令,查询本地缓存数据,如果上层应 用层需要的接口前期已被载入,则直接返回接口;否则,动态载入底层访问模块,初始化参 数,生成接口,缓存,最终向上层应用层返回结果。
所述步骤(1)中,每个底层访问模块都有一个全局唯一的编码,向动态调度模块注册时, 提供此编码和描述文本,另外还提供底层访问模块所在的位置和类ID。
所述步骤(1)中,注册信息包括视频种类编码、种类描述和模块地址信息。
所述步骤(2)中,动态调度模块响应底层访问模块请求的注册服务,记录下模块的注册 信息,并将此信息维护成一个易于查询的列表,并向上层应用层公开查询接口。
所述步骤(3)中,对于上层应用层访问代码来说,它向动态调度模块发送查询命令,命 令参数至少需要包含视频种类的编码,然后动态调度模块会适配返回上层应用层需要的接口。
所述步骤(4)中,具体步骤包括:
(a)动态调度模块根据视频种类编码查询自身维护的列表;
(b)如果在列表内找到可供使用的底层接口,则像上层应用层返回此接口;
(c)否则,如果接口尚未创建,则动态载入调入底层访问模块,完成初始化,然后创 建新接口,最终再向上层应用层返回接口。
本发明的有益效果为:
(1)动态调度模块处于上层应用和中间抽象层之间,对上层应用屏蔽了因多种类底层访 问模块而带给中间抽象层的多样性,其负责管理和动态调度底层访问模块,有效地减少上层 应用层和中间抽象层之间的耦合度;因动态调度模块使用注册列表动态管理底层模块的注册 信息,新增种类视频时,只需要底层访问模块主动向动态调度模块发起注册请求,而动态调 度模块的代码和上层应用的业务代码不再需要做出任何修改即可完成新种类视频的接入;
(2)底层访问模块的代码和数据由动态调度模块在运行时动态载入和卸载,这就为整个 系统运行时减轻了负担,从而有效提高了系统的整体运行效率。
附图说明
图1为本发明的总体流程图;
图2为本发明的动态调度流程图;
图3为本发明的结构架构图。
具体实施方式:
下面结合附图与实施例对本发明作进一步说明。
如图1所示,底层注册视频种类,提供模块地址、编码、描述和类ID等信息,动态调度 模块记录此注册信息,并内部维护一个列表;上层应用层向调度模块请求接口,调度模块负 责动态载入底层访问模块,并为上层应用层准备好功能接口。
如图2所示,进一步说明如下:
上层应用层查询视频接口,动态调度模块在视频列表内寻找需要的数据,如果未找到, 直接向上层应用层返回“未注册”提示;如果找到,则继续判断,接口是否已创建,如是, 直接返回视频接口;否则动态载入底层视频模块,创建接口,并最终向上层应用层返回接口。
如图3所示,在上层应用层和中间抽象层之间增加一动态调度模块,底层访问代码向动 态调度模块注册自身;而上层应用和动态调度模块进行交互,查询底层访问接口。其余架构 保持不变。
一种动态扩展介入新种类视频的方法,包括以下步骤:
(1)底层访问模块向动态调度模块申请注册自身,注册信息包括:视频种类编码、种 类描述和模块地址信息等;
(2)动态调度模块记录底层访问模块的注册信息,并向上层公开查询接口;
(3)上层应用层通过动态调度模块公开的注册列表查询到调用入口,并向动态调度模 块发起查询指令;
(4)动态调度模块根据上层应用层发来的查询指令,查询本地缓存数据,如果上层应 用层需要的接口前期已被载入,则直接返回接口;否则,动态载入底层访问模块,初始化参 数,生成接口,缓存,最终向上层应用层返回结果。
所述步骤(1)中,每个底层访问模块都有一个全局唯一的编码,此编码使用短小的英文 字母代替。向动态调度模块注册时,提供此编码和一段易于理解的描述文本。最重要的,还 要提供底层访问模块所在的位置,类ID等。
所述步骤(2)中,动态调度模块响应底层访问模块请求的注册服务,记录下模块的注册 信息,并将此信息维护成一个易于查询的列表,并向上层应用层公开查询接口;
所述步骤(3)中,对于上层访问代码来说,它向动态调度模块发送查询命令,命令参数 至少需要包含视频种类的编码,然后动态调度模块会适配返回上层应用层需要的接口;
所述步骤(4)中,具体步骤包括:
(a)调度模块根据视频种类编码查询自身维护的列表;
(b)如果在列表内找到可供使用的底层接口,则像上层应用层返回此接口;
(c)否则,如果接口尚未创建,则动态载入调入底层访问模块,完成初始化,然后创 建新接口,最终再向上层应用层返回接口。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限 制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付 出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
机译: 视频/ S-视频信号的扩展切换由用于启动另一种类型的视频信号切换的自动检测设备和用于由另一种类型的信号仿真一种类型的信号的设备来启动所述切换
机译: 视频/ S-视频信号的扩展切换由设计用于启动另一种类型的视频信号切换的自动感应设备和用于通过另一种类型的信号来仿真一种类型的信号以启动所述切换的设备
机译: 通过自动感应设备扩展的视频/ S-VIDEO信号切换,旨在启动不同类型的视频信号和设备的切换,以消除一种类型的信号通过另一种类型的信号来启动所述自动切换。