视频国标学习

总体介绍

GB/T28181协议,全名叫《安全防范视频监控联网系统信息传输、交换、控制技术要求》,是由中国国家标准委员会发布的一种国家级的标准。它主要对视频监控系统的各个方面做了明确的规定,使得不同厂商生产的视频监控设备能够相互连通,信息共享,提高整个监控系统的效率和可靠性。28181协议从2011年发行第一个版本以来已经连续迭代了3个版本,最新发布版本为GB/T28181-2016,最新的协议文档可通过点击文末的阅读原文获取。在公安、政府、企事业单位等视频监控类项目中,28181协议基本是IPC、NVR、平台、视频边界网关必须支持的流媒体协议。

28181协议包含设备注册、实时音视频点播、设备控制、报警时间通知和分发、设备信息查询、状态信息报送、历史音视频文件检索、历史音视频文件回放和下载、网络校时、订阅和通知、语音对讲和语音广播等内容。

GB/T28181基本结构

28181协议基本结构如下如所示:
在这里插入图片描述
28181协议包含终端侧协议和平台侧协议,终端侧包含IPC、NVR等终端设备,平台侧包含NVR、视频平台、网闸等。IPC通过28181协议接入视频监控平台或NVR;NVR可向下接入IPC,向上接入视频监控平台;GB28181支持多级级联,因此视频监控平台之间可通过28181协议级联,实现协议交换和视频传输。这里视频网闸作为网络安全边界,在公安跨网传输时作为安全网络区域与非安全网络区域之间的网络隔离设施,支持28181的协议通道,因此上下级视频监控平台可直接通过28181协议实现跨网闸通信。

28181协议结构如下图所示:
在这里插入图片描述

协议包含两个通道会话通道和媒体流通道,会话通道包含信令交互、视频会话,主要基于sip进行扩展,流媒体通道通过RTP/RTCP进行传输,其中传输层协议最新版本28181规范已经可以支持TCP和UDP两种方式。下面对信令交互、音视频会话、音视频传输三种类型的协议进行介绍:

信令交互:信令交互协议是28181协议的基础,其在sip协议的基础上进行了扩展,扩展协议IETF RFC3428规定的MESSAGE方法实现,协议体为xml格式。主要的SIP消息有注册、心跳、设备搜索、设备状态查询、设备控制等。

音视频会话:包含视频预览和视频回放,视频预览采用sip的INVITE、ACK、BYE方法实现,媒体协议通过SDP协议来携带;视频回放采用SIP INVITE实现会话连接,擦用SIP INFO方法实现回放命令控制,控制协议命令引用MANSRTSP的PLAY、PARUSE、TREADOWN等命令。

音视频传输:通过视频会话建立视频传输通道后,通过RTP/RTCP进行视频传输,传输的音视频封包方式为PS流。

GB/T28181关键协议流程

设备注册
这里以IPC向视频平台注册为例,设备注册流程如下:
在这里插入图片描述

  • IPC向视频平台发起Register注册请求,携带设备信息。
  • 视频平台收到注册请求后,判断是否携带认证信息,如果未携带,则返回401,鉴权失败。
  • IPC根据平台鉴权的要求,携带Anthorization认证信息,重新发起注册请求。
  • 平台对认证信息进行认证,认证通过后,返回200,注册成功。

这里要注意鉴权方式,平台回复401时会携带WWW-Authenticate头字段,此字段包含平台支持的鉴权方式,一般方式有basic、digest等。IPC需要根据平台支持的鉴权方式进行认证信息的封装。

设备目录查询
设备目录查询主要查询设备/下级平台的目录结构,通过查询目录结构之后获取设备摄像头列表信息,通过摄像头列表信息,平台才可选择摄像头进行摄像头视频播放等操作,28181所有信令操作流程基本类似,了解了此协议流程,其他信令交互可参照。

28181信令交互采用异步交互的方式,请求消息和响应消息异步进行。
在这里插入图片描述

  • 平台向IPC发起目录查询请求(catlog),携带查询设备ID。
  • 设备直接返回200 OK,不携带响应
  • 设备向平台发送目录查询响应信息,携带设备目录信息
  • 平台接收响应信息,返回200 OK

实时视频播放流程
视频播放采用SIP IETF RFC 3216规定的INVITE、ACK、BYE方法,还是以视频平台向IPC申请视频为例,来说明28181视频播放流程:
在这里插入图片描述

  • 视频平台向IPC发起INVITE请求,SDP携带视频播放信息。
  • IPC收到INVITE请求后,根据SDP携带的信息,进行视频流推送准备,返回响应信息,携带SDP音视频描述信息。
  • 视频平台收到响应信息后,根据SDP音视频描述信息,进行视频流接收准备并返送ACK到IPC。
  • IPC收到ACK后,进行音视频流推送,音视频流封装为PS格式,并通过RTP/RTCP传输。

GB/T28181协议总结

GB/T 28181协议作为公共安全领域中的重要标准之一,规范了视频监控联网系统的信息传输、交换和控制,提高了不同厂商生产的视频监控设备的互联互通性和信息共享性。它不仅在公共安全领域中发挥着重要作用,也在智能家居、企业应用和城市管理等领域有着广泛的应用。

参考文章:https://blog.csdn.net/water1209/article/details/134041202

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/623168.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习-数据库

数据库软件: 关系型数据库: Mysql Oracle SqlServer Sqlite 非关系型数据库: Redis NoSQL 1.数组、链表、文件、数据库 数组、链表: 内存存放数据的方式(代码运行结束、关机数据丢失) 文件、…

防范“AI换脸”风险 ZOLOZ Deeper问世

4 月 16 日,深度伪造(Deepfake)综合防控产品ZOLOZ Deeper 在北京正式发布,以拦截用户刷脸过程中的“AI换脸”风险,目前已率先应用在身份安全领域。公开资料显示,ZOLOZ是蚂蚁数科的科技品牌,以生…

ClickHouse--18--argMin() 和argMax()函数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 argMin() 和argMax()函数业务场景使用案例1.准备表和数据:业务场景一:查看salary 最高和最小的user业务场景二:根据更新时间获取…

学习经验分享【32】本科/硕士开题报告、中期报告等写作经验分享

本科/硕士阶段首先就是要写开题报告,然后中期报告,这篇博文就是分享一下写报告的经验,避免被老师打回来。本人有丰富的写报告经验,有需要的朋友可添加文末联系方式与我联系。 一、本科开题报告的提纲 课题来源及研究的目的和意义…

lua学习笔记21完结篇(lua中的垃圾回收)

print("*****************************lua中的垃圾回收*******************************") text{id24,name"仙贝"} --垃圾回收关键字collectgarbag --获取当前lua占用内存数 k字节 返回值*1024就可以得到具体占用字节数 print(collectgarbage("count&…

运营商三要素验证API接口怎么对接

运营商三要素验证API接口又叫手机三要素验证API接口、运营商实名认证接口,这个接口是验证姓名、身份证号、手机号三者是否一致,返回验证结果,如果一致则说明三者信息匹配,可以有效确认当前注册用户的身份信息,那么运营…

系统集成项目管理工程师教程,第2章领读文字简化版来啦

上周六晚上在软考中项内进行了第2波领读,用18分钟时间领读了中项第3版教程的第2章,考虑到语音没法回放,迟到同学无法回听,所以围绕领读内容的要点,今天简要整理了一篇文字稿。 不过文字稿是精简版,如果你需…

在Vue3中如何使用H.265视频流媒体播放器EasyPlayer.js?

H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,可支持H.264与H.265编码格式,性能稳定、播放流畅,能支持WebSocket-FLV、HTTP-FLV,HLS(m3u8&#…

【Origin+Python】使用External Python批量出图代码参考

目录 基本介绍环境配置官方代码示例基础代码详解我的代码效果视频进阶代码及去水印 基本介绍 origin2021后可以使用python实现批量绘图,一共有两种方式:一种是嵌入式Python,一种是外部Python访问Origin。详细介绍可以自己去查看,打…

shell变量类型

简介 环境变量 小结: 自定义局部变量 自定义全局变量

C# 超高速高性能写日志

1、需求 需求很简单,就是在C#开发中高速写日志。比如在高并发,高流量的地方需要写日志。我们知道程序在操作磁盘时是比较耗时的,所以我们把日志写到磁盘上会有一定的时间耗在上面,这些并不是我们想看到的。 2、解决方案 2.1、简单原理说明 使用列队先缓存到内存,然后我…

GitHub repository - Branch - SSH clone URL - Clone in Desktop - Download ZIP

GitHub repository - Branch - SSH clone URL - Clone in Desktop - Download ZIP 1. Branch2. SSH clone URL3. Clone in Desktop4. Download ZIPReferences 1. Branch 显示当前分支的名称。从这里可以切换仓库内分支,查看其他分支的文件。 2. SSH clone U…