概述:
做这个工作,必须要有清晰的概念,就是gb28181是什么东东,解决什么问题,这问题没弄清,会走很多弯路.
gb28181是一个网络协议,目的有两个:
1.不同厂商的设备采用该标准,那么平台都可以支持,简单来说是,设备无关化.
2.平台的互访,不同厂商的平台可以级联访问,上级能访问下级的资源,达到上级单位可以观看下级单位的监控.
出发点是好的,可惜由于协议的不完善,以及表述的不明确,因此带来开发者很大的困扰.经过这段时间的学习与过检,现在可以很明确的说,gb28181是基于已有的局域网监控平台所定下的标准,因此先天就对公网类型的C/S架构是不相符的,若你的旧有平台是C/S的话,像我们这样,想从旧有的改造,就走弯路了.起码GB28181相关的功能应该做成一独立的模块,不要与旧有的混在一起,过检前最好不要先考虑公网的访问工作,过检后优化阶段再想.
过检攻略:
解码器,IPC/DVR,相对来说比较容易,只要下载网上分享的OSIP TEST的例子,稍加改动,增加GB28181相关的处理就可以了,最麻烦的不过是PS流的打包方面,相关源码我会带上,难点在平台.
平台过检共89项内容,主要是IPC/DVR/解码器的接入与正常应用,平台的上联与下联.
IPC/DVR的接入相对来说难度不大,看标准文档基本就可以解决.因为相关的命令逻辑在自测平台上可以抓包看到.
级联就要详细说说了,这个问题我们花了很大精力才弄懂弄通,其实就是很简单,上联,表示本平台在下级,向上发消息;下联,表示本平台在上级,向下级平台发消息;级联中,有个上下级的概念,只有上级平台可以调用下级平台的设备进行操作或观看;并不存在下级平台向上级获取任何内容的做法;
权限,或者是设备及用户的管理,这个在文档中基本没有体现.因此实现就比较灵活.