当前位置:文档之家› 中间件系统使用手册

中间件系统使用手册

中间件使用手册目录第一章中间件简介 (5)1.1中间件简介 (5)1.2 中间件功能特点 (5)1.3 中间件支持设备 (6)背景资料: (6)第二章中间件拓扑图 (7)2.1 直连型 (7)2.2 转发型 (8)第三章中间件接口 (9)一、图像操作 (9)设置注册服务器的IP地址SetRegIP (9)设置代理服务器的IP地址SetProxyIP (9)获取录像磁盘列表GetAllHardDiskInfo (10)设置磁盘是否用于录像,是否自动覆盖SetAllHardDiskInfo (10)设置设备信息SetDeviceInfo (10)设置设备信息2 SetDeviceInfo2 (10)设置设备信息3 SetDeviceInfo3 (10)打开视频OpenVideo (11)关闭视频CloseVideo (11)打开或关闭声音SetEnableSound (11)设置视频重连1 SetReconnect (11)设置视频重连2 SetReconnect2 (11)全屏FullScreen (12)二、获取设备状态 (12)打开设备OpenDevice (12)关闭设备CloseDevice (12)获取设置状态GetDeviceStatus (12)下发短信息SendMessageInfo (12)三、录像 (13)默认路径保存录像Save (13)自选路径保存录像Record (13)停止录像StopRecord (13)四、检索录像文件 (13)检索某天录像文件SearchDay (13)检索某月的录像文件SearchMonth (13)检索某天某个时间段的远程录像文件SearchTime (14)获取设备列表SearchGetDeviceList (14)检查某天是否有记录或录像SearchHaveRecord (14)获取检索结果SearchGetFileInfo (14)停止检索SearchClose (14)五、下载录像文件 (15)下载文件DownloadFile (15)停止下载文件DownloadFileStop (15)获取下载文件总长度GetDownloadTotalLength (15)获取已下载长度GetDownloadLength (15)获取下载信息事件OnDownloadInfo (15)六、本地录像回放 (16)回放本地录像PlayOpen (16)暂停回放PlayPause (16)停止回放PlayStop (16)自选文件回放SelectFilePlay (16)设置播放速度PlaySetSpeed (16)获取总共播放时间PlayGetTotalTime (16)获取当前播放时间PlayGetCurTime (17)设置播放位置PlaySeek (17)七、云台操作 (17)云台控制YuTaiControl (17)八、语音对讲 (18)设置声音OpenSound (18)停止语音DeleteDevice (18)监听设备状态、广播AddDevice (18)九、其他设置 (19)设置音量SetV olume (19)设置视频缓冲时间SetVideoBuffer (19)十、设置设备 (19)获取远程设备GetConfig (19)保存远程配置SetConfig (19)设置字码流SetSubCode (19)服务器配置ServerConfig (20)获取设置配置GetConfig2 (20)设置设备配置SetConfig2 (20)远程升级UpGrade (20)获取升级进度GetUpGradeState (20)获取GPS上传时间GetGps (20)十一、检索日志文件 (21)检索某月日志文件(直连/设置设备信息)SearchLogMonth (21)检索某天日志文件SearchLogDay (21)获取检索日志结果SearchGetLogInfo (21)十二、抓图 (21)远程抓图或本地截屏CapturePic (21)十三、事件响应 (22)鼠标双击事件OnMouseLDblClk (22)接收所有窗口消息事件OnPreTranslateMessage (22)报警事件OnDeviceEvent (22)菜单单机事件OnMenuEvent (22)获取视频中的信息的事件OnNetVideoInfo (23)获取视频是否打开成功的消息OnGetOpenVideoMessage (23)第一章中间件简介1.1中间件简介由于基于SDK开发比较繁琐,也需要开发者具备较高的C++编写能力。

更重要的是不同型号的设备有不同的SDK,这样导致开发的软件只能适应对应型号的设备开发效率也相当的低。

为了屏蔽不同SDK的差异性,支持更多的设备型号,提高开发效率。

我们开发了这套中间件系统,其中中间件平台包括如下部分,其中核心是客户端OCX:1、服务器部分包括配合设备使用的注册服务器、转发服务器(实时视频转发)2.客户端用OCX主要一个NETVIDEO.OCX, 里面封装了常用的接口,可以实现设备视频观看,文件下载,配置等多种功能。

其中客户端程序只需要初始化装载NETVIDEO.OCX,就可以非常方便的调用其内部接口,实现二次开发。

经过多个平台实际项目的不断完善,OCX已经能完成SDK的全部功能,并且能适应客户不同应用界面和不同架构的开发。

1.2 中间件功能特点功能:中间件能够实现不同客户的开发需求,可以支持BS模式,也可以支持CS模式。

能够支持多种不同型号的设备。

基于中间件可以开发平安城市的安防系统,也可以开发目前比较前沿的车载监控调度系统。

特点:1.实时图像检测根据用户的不同需求,可以支持不同的窗口显示2.历史视频数据回放支持远程播放下载设备的历史数据3.车辆定位可以获取设备的gps信息,来定位车辆4.轨迹显示联合gps服务器能够实现gps保存以及回放gps数据5.报警监控支持设备报警接收6.远程设置设备支持远程操作设置设备,修改设备的参数7.日志下载支持设备日志查询和下载功能1.3 中间件支持设备目前中间件支持的设备有Mini、X11、X3等多种设备注:具体设备的参数和型号见公司设备参数说明背景资料:X11系列设备网络协议序列图考虑到移动网络的复杂性,设备采用的是主动上报方式,主动连接注册服务器建立长连接构成信令通道,信令通道主要负责命令、GPS数据、报警等小数据传送。

由于图像数据大,通过注册服务器中转没有必要,所以是直接设备连接客户端机器,形成媒体链路,传送图像数据。

由于建立媒体链路需要客户端提供IP和端口,设备能建立连接。

考虑到客户端通常是内网IP 所以一种简单方式是部署转发服务器,客户端直接从转发服务器上获取实时视频数据。

这样只需要转发服务器有一个公网IP就可以了。

客户端可以通过转发服务器获取到相应的实时视频。

第二章中间件拓扑图客户端获取实时视频可以直从设备上获取,这种称为直接连接模式。

也可以从转发服务器上获取,这种称为转发模式。

转发模式通过部署转发服务可以解决客户端接收媒体数据需要公网IP的限制。

使用步骤大致为:安装中间件OCX并注册---》配置中间件INI(填写转发、注册服务器IP 端口)---》调用接口SetDeviceInfo 设置设备相关信息---》OPENDEVICE ----》执行相关命令----》CLOSEDEVICE2.1 直连型直连型即客户端(OCX)和设备直接建立连接。

设备的数据直接传会给OCX。

OCX发的命令也直接传达设备。

调用OCX接口2.1.1首先要注册OCX控件如上图所示OCX注册在C盘windows下2.1.2.配置参数找到注册的ocx目录下dvrplus\providerrmmpeg4\init.ini文件参数如下[RegAddr];信令服务器IP-该处填写安装运行信令服务器的ip地址,如ip是192.168.1.3ip=192.168.1.3;信令服务器端口-该处填写安装运行信令服务器的侦听端口默认是5556port=5556[LocalRouterAddr];视频服务器的公网IP-运行OCX控件的电脑的公网IP如公网ip是123.158.25.02ip=123.158.25.02;接收视频数据的端口-该处是填写接收视频数据的端口,如果不填将无法观看视频。

如果有多个内部网络,则需要映射端口一般建议7263端口VideoPort=72632.1.3. 初始化设备信息SetDeviceInfo(LONG nType, BSTR szName, BSTR szIP, LONG nPort, BSTR szProxyIP, LONG nProxyPort, BSTR szUserName, BSTR szPassword);由于该处是直连型,所以相应的参数不需要填写转发IP,如打开设备ID为dns:7856的视频SetDeviceInfo(121,”车牌7856”,”dns:7856”,0,””,17891,”设备用户名”,”设备密码”)或者SetDeviceInfo2(LONG DeviceType, LPCTSTR DeviceID, LPCTSTR TransmitIP);2.1.4.打开视频OpenVideo(LONG nChannel);如打开第1通道的视频 OpenVideo(0);2.1.5.关闭视频CloseVideo()2.2 转发型转发型即是通过视频服务器把相同的数据分给不同的客户,这样弥补了设备到服务器间网络带宽不足。

同是也支持多个客户同时看同一台设备的视频。

一般大型的系统建议都采用此模式2.1.1.注册OCX步骤同上2.1.2.配置参数找到注册的ocx目录下dvrplus\providerrmmpeg4\init.ini文件参数如下[RegAddr];信令服务器IPip=;信令服务器端口或者调用LONG SetRegIP(LPCTSTR RegIP);port=5556[ProxyAddr];媒体代理服务器公网IP-该处是媒体代理服务器的地址或者调用LONG SetProxyIP(LPCTSTRProxyIP);ip=;媒体代理服务器端口-建议端口都采用默认。

如果是共享的内网需要映射端口ProxyClientPort=5567ProxyDevPort=55662.1.3. 初始化设备信息SetDeviceInfo(LONG nType, BSTR szName, BSTR szIP, LONG nPort, BSTR szProxyIP, LONG nProxyPort, BSTR szUserName, BSTR szPassword);由于该处是转发型,所以相应的参数需要填写转发IP,如打开设备ID为dns:7856的视频,如果运行视频服务器的ip是122.223.23.8SetDeviceInfo(121,”车牌7856”,”dns:7856”,0,”122.223.23.8”,17891,”设备用户名”,”设备密码”)或者SetDeviceInfo2(LONG DeviceType, LPCTSTR DeviceID, LPCTSTR TransmitIP);2.1.4.打开视频OpenVideo(LONG nChannel);如打开第1通道的视频 OpenVideo(0);2.1.5.关闭视频CloseVideo()第三章中间件接口一、图像操作设置注册服务器的IP地址SetRegIP函数:LONG SetRegIP (LPCTSTR regIP)参数:LPCTSTR regIP 注册服务器IP地址返回值:0 成功,非0 失败说明:如果是只收取视频信息,可以不设置该地址,如果需要得到GPS信息则需要设定该地址。

相关主题