GB/T 28181 协议技术详解:视频监控国标从入门到实战
VidDown 工具站:免费、本地优先的开发者工具箱
在深入解析 GB28181 协议之前,先介绍一下我维护的VidDown(https://www.viddown.cn)。它是一个免费、无需登录、优先纯前端处理的在线工具集,涵盖 JSON 格式化、URL 编解码、Cron 表达式生成、正则测试、PDF 合并等 20+ 实用功能。如果你在对接 GB28181 平台时遇到 SIP 信令调试、配置解析等问题,VidDown 的 JSON 格式化和正则测试工具可以帮你快速处理信令报文中的结构化数据。所有工具均优先在本地运行,不上传敏感内容,欢迎使用。
🔗 主站:https://www.viddown.cn
GB/T 28181 协议技术详解:视频监控国标从入门到实战
做安防平台开发那阵子,公司接了雪亮工程的项目,需要把不同厂家数百个摄像头统一接入上级公安平台。摄像头来自海康、大华、宇视等不同厂商,每个厂家的 SDK 各不相同,光是集成调试就花了一个多月。后来换了基于 GB28181 的方案,设备主动向平台注册,平台统一管理和调度,跨厂商的问题一次性解决了。这篇文章从协议架构、信令流程、媒体传输到实际部署,把 GB/T 28181 的关键技术点全部拆解出来。
一、GB/T 28181 是什么?
GB/T 28181 的全称是《公共安全视频监控联网系统信息传输、交换、控制技术要求》,是我国视频监控领域的国家级通信标准[reference:0]。它于 2011 年首次发布,2016 年和 2022 年分别进行了修订,当前最新版本为 GB/T 28181—2022。
该协议主要用于解决以下问题:
- 不同厂商视频设备无法互联互通
- 不同平台之间视频资源难以共享
- 视频监控系统缺乏统一接入标准[reference:1]
通过 GB28181 协议,网络摄像机(IPC)、视频编码器、NVR 等设备可以按照统一规则接入平台,实现跨厂商、跨系统的视频联网[reference:2]。
简单理解:GB28181 就是视频监控领域的“普通话”,让海康、大华、宇视等各厂商的设备都能在同一个平台上进行通信,实现设备标准化接入与视频集中管理[reference:3]。
二、协议的整体技术架构
GB28181 采用的是信令层 + 媒体层的分层架构[reference:4]:
| 层次 | 核心协议 | 功能说明 |
|---|---|---|
| 信令层(控制层) | SIP(会话初始协议) | 设备注册、心跳保活、目录查询、云台控制等指令 |
| 媒体层(数据层) | RTP(实时传输协议) | 实时视频流和录像回放流的传输 |
GB28181不是单一协议,而是在国际通用标准(SIP、RTP、SDP)基础之上进行了行业定制,以满足视频监控联网系统的标准化需求[reference:5][reference:6]。
2.1 信令层:基于 SIP 的扩展
SIP 是一个应用层点对点协议,用于初始化、管理和终止网络中的语音和视频会话[reference:7]。GB28181 对 SIP 进行了视频监控领域的扩展,常用的 SIP 消息包括:
- REGISTER:设备注册与注销
- MESSAGE:心跳保活、设备状态上报
- INVITE / ACK / BYE:建立和释放媒体会话
- INFO:PTZ 云台控制、设备配置
- SUBSCRIBE / NOTIFY:目录订阅与通知
2.2 媒体层:RTP + PS 封装
GB28181 使用RTP(实时传输协议)传输视音频数据。视频数据首先按照 MPEG-PS(Program Stream)格式进行封装(将 H.264/H.265 码流打包成 PS 包),然后再封装成 RTP 包进行网络传输[reference:8]。
RTP 包的结构顺序为:PS 包 = PS 头 | PES(video) | PES(audio),再用 RTP 封装发送[reference:9]。
支持的编码格式包括:H.264、H.265(视频);G.711、AAC、G.722.1(音频)[reference:10]。
三、设备注册与鉴权流程
设备注册是 GB28181 协议最核心的环节,设备上线后主动向平台发起注册请求,平台完成鉴权并确认注册,之后设备周期性发送心跳消息维持在线状态[reference:11]。
注册流程如下[reference:12][reference:13]:
- 设备发起注册:SIP 代理(摄像头/NVR)向 SIP 服务器发送 REGISTER 请求,包含设备国标 ID(20 位数字编码)、IP 地址、端口号、注册有效期(Expires 字段)等。
- 平台返回质询:SIP 服务器返回 401 Unauthorized 响应,在
WWW_Authenticate字段中给出认证体制和参数(摘要认证)。 - 设备带认证信息重发:设备重新发送 REGISTER 请求,在
Authorization字段中携带认证信息(用户名、密码的摘要),Expires 字段 > 0。 - 平台确认注册:SIP 服务器验证身份合法后,返回 200 OK,注册成功;身份不合法则返回拒绝应答。
3.1 心跳保活机制
设备注册成功后,需要定期发送刷新注册消息来维持在线状态。设备通过 MESSAGE 方法携带设备状态信息定期上报,平台收到后返回 200 OK[reference:14][reference:15]。如果平台长时间收不到保活消息,则认为设备离线。
3.2 注销流程
注销流程与注册类似,区别在于设备发送 REGISTER 请求时,将 Expires 字段设置为 0,表示主动注销[reference:16]。
3.3 DeviceID:国标设备身份证
DeviceID(设备编码)是 GB28181 中的核心标识字段,通常为20 位数字编码,用于唯一标识设备或通道[reference:17]。编码规则如下:
- 第 1-2 位:省级编码
- 第 3-4 位:市级编码
- 第 5-6 位:区县级编码
- 第 7-10 位:行业类别码
- 第 11-13 位:设备类型码
- 第 14-20 位:设备序号
DeviceID 相当于 GB28181 系统中的“设备身份证”,设备注册、视频目录管理、平台级联调度都依赖此标识[reference:18]。
四、实时视频点播流程
当客户端需要查看某个摄像头的实时画面时,平台与设备之间的信令交互流程较为复杂,采用三方呼叫控制(3PCC)模式[reference:19]:
- 客户端发起点播请求:媒体流接收者(客户端)向 SIP 服务器发送 INVITE 消息,Subject 字段中携带点播的视频源 ID、媒体流接收者 ID 等参数,SDP 消息体中
s字段为 “Play” 表示实时点播[reference:20]。 - SIP 服务器邀请媒体服务器:向媒体服务器发送 INVITE 请求(不携带 SDP),媒体服务器回复 200 OK,携带接收媒体流的 IP、端口等信息[reference:21]。
- SIP 服务器邀请前端设备:向媒体流发送者(摄像头)发送 INVITE 请求,携带媒体服务器的 SDP 信息,同时增加
y字段描述 SSRC 值[reference:22]。 - 设备回复媒体参数:摄像头回复 200 OK,携带发送媒体流的 IP、端口、SSRC 等信息[reference:23]。
- SIP 服务器完成三方握手:向媒体服务器和前端设备分别发送 ACK 请求,完成会话建立[reference:24]。
- 客户端开始接收视频:SIP 服务器通过 B2BUA 方式建立客户端与媒体服务器之间的连接,摄像头开始将 PS 流通过 RTP 推送至媒体服务器,媒体服务器转码转发给客户端[reference:25]。
- 停止点播:客户端发送 BYE 消息,SIP 服务器逐级向媒体服务器和摄像头发送 BYE,释放会话资源[reference:26]。
值得注意的是,上述流程是设备主动向服务器推流的模式(服务器下发 INVITE 后设备将视频流推送到指定地址),而不是客户端主动拉流[reference:27]。这一设计更适用于多级平台级联和大规模设备接入的场景。
五、录像回放流程
录像回放与实时点播流程类似,主要区别体现在 SDP 消息体中:实时点播的s字段为 “Play”,而录像回放的s字段为 “Playback”,同时需要携带时间范围参数(起始时间和结束时间),用于指定查询哪一段历史录像。
按时间段查询录像和录像下载(取证场景)也是 GB28181 原生支持的功能,前提是设备或平台具备录像存储能力[reference:28]。
六、GB28181 媒体传输细节
6.1 PS 封装格式
GB28181 采用 MPEG-PS(Program Stream)格式封装视音频数据。PS 封装首先按照 ISO/IEC 13818-1 将视音频流封装成 PS 包,再将 PS 包以负载方式封装成 RTP 包[reference:29]。
典型的视频关键帧 PS 包结构如下[reference:30]:
PS 包 = PS 头 | 系统头(System Header) | PSM | PESV(视频) | PESA(音频)
- 视频非关键帧的 PS 包中一般不包含系统头和 PSM
- 系统头用于描述 PS 包中的码流种类
- PSM(Program Stream Map)用于标识流类型
PSM 中流类型(stream_type)取值如下[reference:31]:
| 编码格式 | stream_type 取值 |
|---|---|
| H.264 视频流 | 0x1B |
| H.265 视频流 | 0x24 |
| G.711 A 律音频 | 0x90 |
| G.711 U 律音频 | 0x91 |
| AAC 音频流 | 0x0F |
6.2 RTP 封装
PS 包封装完成后,再按照 IETF RFC 2250 封装成 RTP 包,主要参数如下[reference:32]:
| 参数 | 取值 | 说明 |
|---|---|---|
| payload type | 96 | 负载类型 |
| encoding name | PS | 编码名称 |
| clock rate | 90 kHz | 时钟频率 |
| SDP 中 “m” 字段 media | video | 媒体类型 |
6.3 H.265 和 AAC 支持
GB/T 28181-2022 相比 2016 版,在媒体传输方面进行了重要扩展,增加了对 H.265 和 AAC 的支持,是这一版本最核心的技术变化之一[reference:33][reference:34]。
H.265 视频流的 RTP 载荷格式应符合 IETF RFC 7798 的规定,负载类型(Payload Type)建议从动态范围 96~127 中选择,通常设为 100[reference:35]。AAC 音频流的 RTP 载荷格式则应符合 IETF RFC 3640 的规定[reference:36]。
七、协议版本演进
GB/T 28181 经历了三个重要版本,各版本的主要变化如下:
| 版本 | 发布/实施时间 | 主要变化 |
|---|---|---|
| GB/T 28181-2011 | 2011 年发布 | 首个正式版本,奠定视频监控联网标准基础 |
| GB/T 28181-2016 | 2016 年发布 | 优化互联结构,增加安全性要求 |
| GB/T 28181-2022 | 2022-12-30 发布,2023-07-01 实施 | ① 支持 H.265、AAC、G.722.1 编解码格式;② 信令报文增加协议版本标识X-GB-Ver:3.0;③ 增加 NAT 穿透时 TCP 传输模式支持;④ 增加注册重定向(集群模式);⑤ 信令字符集统一为 GB18030[reference:37] |
与其他视频传输协议的对比[reference:38]:
| 对比项 | GB28181 | RTSP |
|---|---|---|
| 标准属性 | 国家标准 | 通用流媒体协议 |
| 设备注册 | ✅ 支持 | ❌ 不支持 |
| 目录管理 | ✅ 支持 | ❌ 不支持 |
| 平台级联 | ✅ 支持 | ❌ 不支持 |
| 监管适配 | 强 | 弱 |
| 适用场景 | 政企 / 行业级规模系统 | 简单拉流 |
结论:GB28181 更适合规模化、平台化视频系统。
八、实际部署要点
8.1 网络带宽要求
根据 GB/T 28181-2016 标准规定[reference:39]:
- 前端设备接入监控中心单路,不低于512kbps(重要场所不低于2Mbps)
- 各级监控中心间网络单路,不低于2.5Mbps
8.2 开源方案推荐
如果要快速部署 GB28181 平台,推荐使用WVP-GB28181-pro + ZLMediaKit组合:
- WVP-GB28181-pro:基于 Java 开发的 SIP 信令服务器,负责设备注册、心跳、指令下发
- ZLMediaKit:高性能流媒体服务器,负责接收摄像头的 RTP 流、转码、封装以及向浏览器推送 RTSP/RTMP/HLS 等格式[reference:40][reference:41]
以 Ubuntu 22.04 为例,安装 Redis(会话状态缓存)和 MySQL(设备信息、通道配置存储)后,即可编译运行上述两个组件,实现完整的 GB28181 视频管理平台[reference:42]。
九、常见问题
Q1:GB28181 设备注册失败怎么办?
A:首先检查 DeviceID 格式是否正确(20 位数字),其次确认 SIP 服务器 IP 和端口可通,最后验证密码是否正确。可以通过抓包查看 401 质询和 200 OK 的交互过程。
Q2:能收到视频流但播放花屏?
A:可能是 RTP 丢包或乱序导致的。可以尝试改用 TCP 模式传输,或增大接收缓冲区。ZLMediaKit 默认开启了 RTP 排序去重功能[reference:43]。
Q3:平台如何发现网络中的设备?
A:可以通过 SIP OPTIONS 消息广播发现设备,不过在实际使用中更常见的是设备主动向平台注册[reference:44]。
Q4:GB28181 是否支持平台级联?
A:原生支持。下级平台向上级平台注册,视频目录逐级上报,跨平台视频点播,常见于省/市/区/园区多级架构[reference:45]。
Q5:GB28181 能否用于工业和非安防场景?
A:可以,而且应用越来越多。典型场景包括工业现场视频监控、能源/电力/水务视频采集、生产线可视化、AI 视频分析数据源等[reference:46]。
十、写在最后
GB/T 28181 作为我国视频监控领域最重要的国家标准协议,解决了视频设备联网、平台互通与资源共享的核心问题。它广泛应用于智慧城市、雪亮工程、园区安防、交通监控以及工业视频物联网等场景[reference:47][reference:48]。虽然协议复杂度较高,实施成本不低,但通过标准化的信令机制与视频传输规范,不同厂商的设备可以真正实现互联互通,这也是 GB28181 能够成为行业事实标准的关键原因。
本文技术内容仅供参考,具体实现请以最新版 GB/T 28181 标准文档为准。
