“平安城市”是一个宽泛的概念,2004年以来我国先后开展的第一批城市报警与监控试点、第一批科技强警示范城市建设试点、第二批城市报警与监控系统建设试点、”3111″工程试点、第二批科技强警示范城市建设试点皆与平安城市建设有关。五批试点其实都是为了一个共同的目的-提高社会治安防控能力,让我们的城市更安全。
新的问题出现
由公安部、科技部联合开展的第一批科技强警示范城市建设历时近两年,21个示范城市两年来累计投入经费近百亿元,基本实现了公安业务信息管理,网络化、流程化的数字警务运行模式。随着平安城市在中国遍地开花,客户的需求也越来越高。特别在一些重点行业中,由于安保的重要性,客户开始注重系统的架构、扩展性、安全性、易用性等实际问题。如客户提出多品牌设备无缝接入、需要解决前端存储,甚至需要前端主动连接指定服务器,自动上传视频等功能。这也说明了国内的用户慢慢走向了成熟。
代理程序,用于协议的转换
在平安城市大联网的项目中,为了确保网络安全,各地政府、技防办等机构定义了一些特殊的属于私密的协议不被外界广泛认知,通信的协议控制非常严格、保密性很高。这些平安城市或大联网的项目都有一些共同特征,如项目规模大、周期短,而最为重要的是每个项目都有自己保密的要求。随着对前端设备数量需求的增大和前端设备协议门槛的提高,同时越来越多的厂家希望自己的前端设备进入像平安城市大联网这样的项目中,那怎么办呢?
解决方案的提出
针对不同行业的应用,解决的方案会有不同的调整,但整体思路是在深入了解需求后,为前端的摄像机提供一个代理程序(如图2所示)。这个代理程序像翻译软件一样将摄像机原有的通用协议转换成为行业性的私有协议,使摄像机在协议上能与行业内私有协议的平台对接。而针对于项目的不同,代理程序还可满足不同的需求,例如能把摄像机原有的基础流(ES)转换成节目流(PS),音频ADPCM格式转化为G.711格式,在摄像机允许开放的前提下增加OSD图层进行传输,甚至把摄像机的数据进行加密传输防止在传输过程中被截取破译。摄像机的接入改造使摄像机能在行业中有更广泛的应用。以下通过两个案例来更深入了解这种做法的能力。
平安城市案例分享
首先介绍的是一个平安城市的项目,项目当地的技防办出于数据传输时的保密性需求,要求入围产品的IP摄像机在协议接入的时候需要使用的是私有的通信协议,包括对摄像机参数设定、获取视频流的方法和码流的格式都有特别的规定。规定大致如下:
视音频编码要求
视频封装采用PS流封装,RTP浏览;
-必须支持CBR和VBR两种码率控制方式,CBR码率波动不超过15%;
-帧率1~25fps连续可调,强制I侦;
-应支持双码流编码模式,即:主码流和子码流(子码流CIF,希望以后子码流是可定义的);
-主码流128kbps~5Mbps连续可调,子码流至少为64Kps~1Mbps;(将来如果网络环境改善,希望码流最高限制可以提升);
-心跳侦测设备状态;
-必须支持时间OSD和通道名称OSD,位置可调整;
上面列出的要求对于本系统来说是缺一不可的入围条件。对于一些已成型的摄像机和所有国外品牌来说,都不能完全满足以上的要求。
针对项目的需要为摄像机提供一个代理程序,可把协议转换成为符合项目要求的私有协议,同时丰富摄像机的功能以满足项目的需求。代理程序可以看作为摄像机的一个通信接口,发送到摄像机的数据,先通过代理程序的翻译,然后再由代理和摄像机进行通信。
功能层面的访问接口:
-访问音视频码流:HTTP,RTP/RTSP,私有协议
-设备的控制:PTZ,I/O
-访问录像文件和索引
-设备的配置信息:型号,IP地址和MAC地址,编码格式,I/O状态,OSD更改方法等等;
需要厂家提供的信息中大部分都在原有公开的CGI基础上可以满足的,以私有的协议接入到平台中。在加入代理后,摄像机完成的功能如下:
为设备增加功能如下:
-以私有协议接入基础功能:Camera名称,ID,服务器地址,注册登录,设备状态,远程升级;
-心跳侦测,保证摄像机工作正常;
-扩展:可配置触发条件的报警通知,增加PT功能(需要与云台设备组合),前端录像检索方式转换;
-转换:如ES转PS,ADPCM转G.711,多种网络封装协议(UDP,RTP/RTSP、TCP、私有协议);
-安全:数据加密,用户管理;
-DVR存储视频查找,按文件名回放。
通过代理的转换,不单只是协议上的翻译,同时还有功能的增多。最明显的就是摄像机由原先的ES视频流,扩展到具有PS视频流的功能并且通过原先没有的RTP数据包推送出去,增加数据加密、心跳侦测等功能。这样前端设备的数据格式就满足了项目的私有协议。
特殊行业应用案例分享
以上说的是一个平安城市的案例,其实这种应用除了在平安城市外,在某些特殊行业里面更具有应用价值,下面分享某行业的视频接入代理案例。
某行业所经营的地域分散,每个地域都需要有大量的安保设备确保安全。在这个地域分散、设备量大的情况下,该企业为了避免不同品牌之间接入的差异性,根据自身的需要制定了一套特定的接入标准,入围的摄像机品牌必须能使用该协议与平台进行通信。并且由于地域分散、数量规模巨大的关系,需求从量变转变成了质变,所有摄像机除了私有的协议外,必须能具备主动连接平台的功能,不需要在平台上手动添加。该行业要求入围的摄像机在接入平台前就在摄像机上设置好了平台的接入地址、该摄像机的名称、视频流的格式等信息,免去了摄像机的接入调试工作。只需要安装完成后,摄像机自动注册到平台上。站在企业的角度,这一功能非常实用,省去了在平台寻找IP地址、调试设备等麻烦。
摄像机代理的工作内容:
在IPCamera中开发一个代理程序;
-该代理程序负责接收该企业技术规范中接入服务器发往IPCamera的数据包,将这些数据包的内容解析后,再利用IPCamera中原有的HTTP、私有协议等,发送给IPCamera;
-该代理程序完成的是一个协议转换功能,将PGCP、PGSP等报文格式,转换为IPCamera原有的协议格式;
-增加该代理程序,不影响原有IPCamera的功能,也不需要IPCamera的sourcecode;
-该代理程序可先在桌面Linux系统中进行模拟开发,功能实现后在移植到IPCamera内部;
-增加主动注册功能,可以针对每台上传到IPCamera中的代理去注册的IP地址,摄像机名称,码流格式等参数进行设置。只要网络一同,代理就会主动去申请链接(注:这里的主动连接方式也是私有协议,与SIP协议不同)。
使用程序去编写对应摄像机的代理就可以设置该摄像机注册服务器的IP地址,名字,图像连接方式等信息,不需要厂家进行调整,这个是配合厂家完成行业性私有协议转换的最有效的方式。
结语
上面提到了两个使用代理去更改摄像机协议,丰富摄像机功能的案例。但归根到底,代理只是在摄像机原有基础上进行的调整,代理并不是万能的,也没有对摄像机核心的编码和外部物理接口进行干涉,所以有些功能是无法满足的,例如以下的一些功能:
接入代理不能完成的功能(必须由厂家支持的)
-跟编解码相关的功能:MJPEG、MPEG4、H264等编码转换,多编码,图像质量和码率控制,OSD;
-满足最低性能要求,否则流媒体也没有效果;
-PTZ需要透明通道支持;
-某些硬件(I/O,音频)。
上述的这些功能,主要涉及到底层的编码算法、多码流、摄像机外部的硬件设施。这些代理是没有办法完成的,项目中如果实在需要这样的功能还须由摄像机厂家来配合完成。
设备的接入在大联网里面只是其中的一小部分,但对于前端设备厂家来说是最重要的一部分。
该文观点仅代表作者,本站仅提供信息存储空间服务,转载请注明出处。若需了解详细的安防行业方案,或有其它建议反馈,欢迎联系我们。