首页| 论坛| 消息

标题:Qt/C++开发监控GB28181系统/个人理解/要点总结/经验分享
作者:liudianwu
日期:2026-01-11 09:22
内容:

## 一、前言说明
### 1.1 新增协议
**gb28181-2022主要新增了如下几个协议:**
1. 注册重定向,有些大的平台,下级域可能几万个设备同时连接,会导致并发不够,所以需要有个注册重定向机制,主动告知下级域重新注册到指定的上级域服务器,也就是相当于有个专门的重定向注册服务程序,专门分配注册连接。如果离线后,又需要先注册到重定向服务器,重新分配。
2. 图像抓拍,支持最多抓拍10张图片,可以设置抓拍间隔,最小1s。有些场景尤其是4G摄像头,为了省流量,平时就只需要抓拍报警图像到平台即可,平时不点播视频,视频太费流量。还有就是本来一些场景需要抓拍报警图片专门存储,之前2016版本只能去点播视频抓图,整个过程很繁琐很慢,使用非常鸡肋,而且费宽带。
3. 云台绝对控制,也叫精准控制,之前云台只能连续控制,也是最常用的方式,有些场景需要精准定位控制云台。并且云台位置变化会主动推送到服务器。
4. 增加了看守位的查询HomePositionQuery、巡航轨迹列表查询CruiseTrackListQuery、巡航轨迹查询CruiseTrackQuery、目标跟踪控制命令TargetTrack。
5. 增加了存储卡状态查询及应答命令,设备升级命令。这两个用的少一些。
### 1.2 个人理解
1. gb2818协议是基于sip协议的一套协议框架,而sip是和http协议类似的一套基于udp/tcp载体的协议,最终底层通过udp/tcp收发数据。sip是一套多媒体通信框架,而gb28181就是在这套框架上,定义了具体的通信内容,也就是收发数据填充的内容。
2. sip协议收发通常用的第三方开源库有osip/exosip,exosip依赖osip,是对osip的二次封装,带了具体传输层,osip相当于用来构建要收发的数据,本身没有收发功能。还有个更强大开源库pjsip,带了rtp解析。具体可参考 https://blog.csdn.net/weixin_43147845/article/details/144219082
3. sip协议说复杂也复杂,说简单也简单,复杂就是涉及到的具体协议规约特别庞大,和http协议是并列的一种机制。简单就是如果只是少量的通信,可以直接用udp/tcp通信收发解析,要发送的数据每一行都回车换行,最后一起发出去即可。就是发送和解析不大方便,需要去寻找和取出关键字再处理,而开源库会给你处理好对应的数据结构,比如解析后有枚举字段直接判断。
4. onvif是国际标准协议,gb28181是国家标准协议,各有优缺点,onvif通常是通过搜索到设备再去和设备通信,而gb28181刚好相反,是让设备主动连服务器,带上校验等参数,连上后,服务器再去和设备通 ..

回复 发表
主题 版块