CN105163077A - 一种基于多层抽象的多种类视频集成的方法 - Google Patents
一种基于多层抽象的多种类视频集成的方法 Download PDFInfo
- Publication number
- CN105163077A CN105163077A CN201510548300.8A CN201510548300A CN105163077A CN 105163077 A CN105163077 A CN 105163077A CN 201510548300 A CN201510548300 A CN 201510548300A CN 105163077 A CN105163077 A CN 105163077A
- Authority
- CN
- China
- Prior art keywords
- video
- interface
- standard
- code
- multilayer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Television Signal Processing For Recording (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种基于多层抽象的多种类视频集成的方法,包括以下步骤:提取不同种类视频的SDK接口的相似点;将提取的相似点整理成标准接口,并以标准接口作为视频访问的中间层标准;以中间层标准为参照,进行上层访问代码;以中间层标准为参考,进行不同种类视频的底层访问;本发明有效解决了多种类视频接口存在的多样性问题,将多样性带来的复杂度尽可能缩小范围,使其受限于某个特定的层,有效减少了上层应用的复杂度和代码量,并极大地减小了层与层之间的耦合度。
Description
技术领域
本发明涉及一种基于多层抽象的多种类视频集成的方法。
背景技术
在安防视频监控领域,经常需要集成多个厂家、多个版本的监控视频。这些不同种类的视频中,有的视频厂家提供了二次开发用的SDK,而有的却没有提供。而那些提供了的二次开发SDK的接口却也是形式各异。有FlatAPI,有COM接口,也有C#托管代码的。如果在系统中不加规划,一股脑的适配接入,一是造成系统架构不清晰;二是系统的可维护性也会大大降低。
发明内容
本发明为了解决上述问题,提出了一种基于多层抽象的多种类视频集成的方法,本方法提取各种类视频接口的相似点,将这些相似点整理成为一个中间层标准。这样,在此中间层上层的服务模块就可以和一个标准的中间层进行访问和控制;而在此中间层的下层,以实现和不同种类视频SDK或接口交互的工作。此种方式既有效屏蔽了底层的差异,又可以实现良好的可伸缩性、可维护性和并行快速开发。
为了实现上述目的,本发明采用如下技术方案:
一种基于多层抽象的多种类视频集成的方法,包括以下步骤:
(1)提取不同种类视频的SDK接口的相似点;
(2)将提取的相似点整理成标准接口,并以标准接口作为视频访问的中间层标准;
(3)以中间层标准为参照,进行上层访问代码;
(4)以中间层标准为参考,进行不同种类视频的底层访问。
所述步骤(1)的具体方法为:提取不同种类视频的相似点,比较其SDK提供的功能接口,总结出相似点,视频的最小实现通常包括登录验证、参数配置/读取、实时视频监视、云台控制、录像查询和回放。
所述步骤(2)中,利用COM组件将相似点整理成标准接口,具体步骤包括:
描述COM接口,利用MIDL的中立特性,将总结出的相似点整理成标准的接口规范;将其分为服务器和通道两层,并分别定义COM接口,其中,服务器层用于完成登录验证和参数读取/配置,登录验证通过后,获取通道个数,读取通道的参数,并最终得到通道的接口;通道层为单路视频,开放的接口包括实时视频监视、录像查询和回放,并获取到云台控制接口。
所述步骤(3)中,对于上层访问代码,根据视频的种类查询其对应的接口,然后使用此接口即可完成上层访问代码。
所述步骤(4)中,具体步骤包括:
(a)严格按照标准接口定义实现底层视频访问代码;
(b)独立模块化测试底层代码的实现;
(c)测试稳定后,提交结果,系统化集成测试。
所述步骤(a)中:访问代码时需要考虑视频厂家提供的SDK接口方式。
所述步骤(b)中,底层代码包涵了对标准接口规范的实现,每种类视频实现代码之间是完全无耦合的,准备一段公用的测试代码,这段代码作为底层实现的宿主,包含对标准接口定义的完整调用。
独立模块化测试可在系统集成化测试前提早发现单模块中存在的BUG,并进行修正,有效杜绝这些BUG遗留到集成化测试阶段,并可能影响到其它模块,而产生难以解决的问题。
本发明的有益效果为:
(1)多层抽象技术可使架构更加清晰易懂,易于团队协同开发;
(2)有效解决了多种类视频接口存在的多样性问题,将多样性带来的复杂度尽可能缩小范围,使其受限于某个特定的层;
(3)有效减少了上层应用的复杂度和代码量,并极大地减小了层与层之间的耦合度。
附图说明
图1为本发明的总体流程图;
图2为本发明的“服务层”接口设计图;
图3为本发明的“通道”接口设计图;
图4为本发明的“云台”接口设计图;
图5为本发明的程序架构图。
具体实施方式:
下面结合附图与实施例对本发明作进一步说明。
如图1所示,提取各种类视频的相似点,典型的,这些相似点包括:登录验证、参数配置/读取、实时视频监视、云台控制、录像查询和回放等。将这些相似点整理成MIDL语法描述的COM标准接口,最后跟据标准接口分别开发上层应用和底层应用。
上层应用需要关心COM接口的定义和每种类视频的ClassID(类ID),根据类ID查询视频对应的接口实现,然后再根据COM标准接口定义访问视频内容。
底层应用需关心COM接口的定义,严格按照接口定义规范实现视频访问代码,另外,每底层应用都定义一个类ID唯一标识其身份。
使用微软的MIDL(MicrosoftInterfaceDefineLanguage接口定义语言)来描述COM接口。
如图2所示,进一步说明如下:
图中使用简易文字描述了“服务器层”具备的功能接口。包括方法和属性两类:
登录方法:宿主访问视频内容前,必需要通过此方法完成身份验证。典型的,前端视频服务器通常会对访问者的用户名和密码进行验证,并返回一个代表访问者身份的标识,后续的交互中,访问者需要将身份标识协同其余业务数据一起发回视频服务器端。
注销方法:访问者完成整个视频业务访问工作后,向视频服务器端发送注销命令,本地身份标识也将随即失效。后续如果再需要访问视频,需要重新发起登录验证。
通道个数属性:通道个数通常在1-N(N>=1)之间,例如DVR设备,有4通道、8通道、16通道等,每通道代表一路模拟视频。而像NVR,通道个数将更多,其通道可能包括模拟通道,也可能包括N多的IP通道。其它,非典型的,视频服务器层是一个软件平台,而通道也将变得更加抽象,对于内部实现,它可以是一路IP高清视频,可以是某个DVR上的通道,也可以是某个NVR上的IP通道。但对于外部访问来说,他却是透明的,将其视作类DVR上的通道进行访问即可。
通道列表属性:根据上述的通道个数描述,知晓通道列表容量,查询列表中的单个通道时,典型的,底层代码实现将返回一代表“通道层”的接口,“通道层”接口的方法和属性见下述文本。
服务器参数属性:根据服务器端类型的不同,服务器端参数也将具有多种形式。典型的,如服务器描述、服务器时间、固件版本号等,不再累述。
如图3所示,进一步说明如下:
“通道层”接口功能也包含方法和属性两类:
开启实时监视方法:开启实时视频监视功能。不论前端是DVR的模拟通道、NVR的IP通道还是“软件平台”的抽象通道,对于使用此功能接口的宿主来说,都可以当作是透明的。
关闭实时监视方法:关闭上述开始的实时监视业务。
查询录像列表方法:DVR、NVR或“软件平台”都可能实现前端录像业务。此功能接口用来索取前端录像的列表,此列表可能是文件列表,也可能是按照时间段排列的列表,总有唯一标识用来标识列表中的每一个元素。
录像回放方法:通过上述录像列表查询方法返回的列表,取出想要的元素,将元素的标识通过此功能接口发送到前端,开启录像回放业务。
开启本地录像方法:本功能接口须有“开启实时监视”作为前提条件,将实时监视的视频内容保存到本地计算机。
停止本地录像方法:停止上述的本地录像业务,“实时监视”不受影响。
云台属性:通过此属性获取到一个“云台”接口,通过云台接口可进行下述的云台操作业务。
属性:通道的视频属性等。非本发明的重点,不再累述。
如图4所示,进一步说明如下:
“云台层”开放了云台全方位的控制,亦包括预置位的设置和调取。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (7)
1.一种基于多层抽象的多种类视频集成的方法,其特征是:包括以下步骤:
(1)提取不同种类视频的SDK接口的相似点;
(2)将提取的相似点整理成标准接口,并以标准接口作为视频访问的中间层标准;
(3)以中间层标准为参照,进行上层访问代码;
(4)以中间层标准为参考,进行不同种类视频的底层访问。
2.如权利要求1所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(1)的具体方法为:提取不同种类视频的相似点,比较其SDK提供的功能接口,总结出相似点,视频的最小实现通常包括登录验证、参数配置/读取、实时视频监视、云台控制、录像查询和回放。
3.如权利要求1所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(2)中,利用COM组件将相似点整理成标准接口,具体步骤包括:
描述COM接口,利用MIDL的中立特性,将总结出的相似点整理成标准的接口规范;将其分为服务器和通道两层,并分别定义COM接口,其中,服务器层用于完成登录验证和参数读取/配置,登录验证通过后,获取通道个数,读取通道的参数,并最终得到通道的接口;通道层为单路视频,开放的接口包括实时视频监视、录像查询和回放,并获取到云台控制接口。
4.如权利要求1所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(3)中,对于上层访问代码,根据视频的种类查询其对应的接口,然后使用此接口即可完成上层访问代码。
5.如权利要求1所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(4)中,具体步骤包括:
(a)严格按照标准接口定义实现底层视频访问代码;
(b)独立模块化测试底层代码的实现;
(c)测试稳定后,提交结果,系统化集成测试。
6.如权利要求5所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(a)中:访问代码时需要考虑视频厂家提供的SDK接口方式。
7.如权利要求5所述的一种基于多层抽象的多种类视频集成的方法,其特征是:所述步骤(b)中,底层代码包涵了对标准接口规范的实现,每种类视频实现代码之间是完全无耦合的,准备一段公用的测试代码,这段代码作为底层实现的宿主,包含对标准接口定义的完整调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510548300.8A CN105163077B (zh) | 2015-08-31 | 2015-08-31 | 一种基于多层抽象的多种类视频集成的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510548300.8A CN105163077B (zh) | 2015-08-31 | 2015-08-31 | 一种基于多层抽象的多种类视频集成的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105163077A true CN105163077A (zh) | 2015-12-16 |
CN105163077B CN105163077B (zh) | 2019-01-22 |
Family
ID=54803819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510548300.8A Active CN105163077B (zh) | 2015-08-31 | 2015-08-31 | 一种基于多层抽象的多种类视频集成的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105163077B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1232301A (zh) * | 1998-04-06 | 1999-10-20 | 索尼株式会社 | 蓄电池组件、蓄电池充电器和使用该组件的电子设备 |
CN1238872A (zh) * | 1996-11-22 | 1999-12-15 | 斯普林脱通讯有限公司 | 电信系统 |
JP2006238350A (ja) * | 2005-02-28 | 2006-09-07 | Nec Electronics Corp | データ処理モジュール及びその受信メッセージの格納位置決定方法 |
CN104660997A (zh) * | 2015-02-12 | 2015-05-27 | 江苏物联网研究发展中心 | 面向服务的多源异构视频监控适配方法和系统 |
-
2015
- 2015-08-31 CN CN201510548300.8A patent/CN105163077B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1238872A (zh) * | 1996-11-22 | 1999-12-15 | 斯普林脱通讯有限公司 | 电信系统 |
CN1232301A (zh) * | 1998-04-06 | 1999-10-20 | 索尼株式会社 | 蓄电池组件、蓄电池充电器和使用该组件的电子设备 |
JP2006238350A (ja) * | 2005-02-28 | 2006-09-07 | Nec Electronics Corp | データ処理モジュール及びその受信メッセージの格納位置決定方法 |
CN104660997A (zh) * | 2015-02-12 | 2015-05-27 | 江苏物联网研究发展中心 | 面向服务的多源异构视频监控适配方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105163077B (zh) | 2019-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9600301B2 (en) | Method and apparatus for interactive mobile device guidance | |
KR102481906B1 (ko) | 가상 디바이스를 제공하기 위한 장치 및 방법 | |
CN104484171B (zh) | 终端界面设计系统、方法及相关设备 | |
CN101778264B (zh) | 视频监控方法和系统 | |
US10650288B2 (en) | Consolidation and history recording of a physical display board using an online task management system | |
US20080270978A1 (en) | Automating applications in a multimedia framework | |
US9628206B2 (en) | Endpoint parameter management architecture for audio mixers | |
US20210385121A1 (en) | Method and system for architecture analysis of an enterprise | |
US10008239B2 (en) | System of automated script generation with integrated video production | |
CN103365773A (zh) | 自动测试的系统和方法 | |
US20230086613A1 (en) | Centralized offender management system for multiple jurisdictions | |
CN105578132A (zh) | 带式输送机远程视频维修辅助诊断系统 | |
CN103902293B (zh) | 基于android广电网络浏览器中间件系统构建方法 | |
CN103106368A (zh) | 一种面向等级保护的漏洞扫描方法 | |
CN109800387A (zh) | 一种生成试验报告的方法 | |
CN102223368A (zh) | 在远程桌面传输协议监控时实现操作识别的系统及方法 | |
US20200097872A1 (en) | Systems and methods for automated role redesign | |
CN114125377A (zh) | 具有分布式视频分析的分布式监视系统 | |
CN115665197A (zh) | 一种基于物联网数据采集自动入库的系统及方法 | |
CN105516337A (zh) | 基于动态加载机制的web站点对接解析方法 | |
CN105471847A (zh) | 一种用户信息的管理方法和装置 | |
CN109445384A (zh) | 一种多设备控制系统 | |
US20130290245A1 (en) | Database history management method and system thereof | |
CN105163077A (zh) | 一种基于多层抽象的多种类视频集成的方法 | |
CN106452815A (zh) | 一种信息化管理方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 250101 A203, block F, entrepreneurship square, Qilu Software Park, No.1 Shunhua Road, high tech Development Zone, Jinan City, Shandong Province Patentee after: Conway Communication Technology Co., Ltd Address before: 250101 Qilu Software Park, No. 1 Shunhua Road, Jinan High-tech Development Zone, Shandong Province, A 203 Patentee before: SHANDONG KANGWEI COMMUNICATION TECHNOLOGY Co.,Ltd. |
|
CP03 | Change of name, title or address |