国标GB28181协议客户端开发(一)整体流程和技术选型

这篇具有很好参考价值的文章主要介绍了国标GB28181协议客户端开发(一)整体流程和技术选型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

国标GB28181协议客户端开发(一)整体流程和技术选型

本系列文章将介绍国标GB28181协议设备端的开发过程。本文旨在探讨整体设计和技术选型方面的考虑,为开发人员提供指导和参考。文章将从设备端开发的整体架构、信令交互流程以及关键技术选型等方面展开讨论,帮助有需要的读者了解和把握GB28181协议设备端开发的要点,掌握开发GB28181协议设备端所需的技术和知识,为实际项目的开发奠定基础。

GB28181协议简介

GB28181全称是“公共安全视频监控联网系统信息传输、交换、控制技术要求”,它定义了视频监控设备之间的联网通信协议,旨在实现视频监控系统的互联互通和统一管理。而近些年来,随着视频监控系统的快速发展,GB28181已经成为事实上的IPC网络摄像头、NVR网络硬盘录像机等各种监控设备必有的标准协议。

  1. 基本架构:

    GB28181协议的基本架构包括设备端和平台端。设备端包括视频监控设备,如摄像头、录像机等;平台端则是视频监控系统的管理平台,负责设备管理、视频流接收和存储等功能。

  2. 信令交互:

    GB28181协议使用基于SIP的信令交互机制(进行了扩展)。设备之间通过发送SIP信令来建立通信会话和传输控制信息。常用的SIP消息有注册、心跳、设备搜索、设备状态查询、设备控制等。

  3. 数据传输:

    GB28181协议使用RTP来传输音视频流。视频监控设备通过RTP协议将实时的音视频数据封装成数据包,并通过网络传输到接收端。

通过以上几点,可以看出来,GB28181是跟SIP协议有非常大的相似性,但是两者侧重领域不同,GB28181协议是在SIP协议的基础上针对视频监控领域进行了定制和扩展,以满足视频监控设备之间的联网通信需求。与SIP协议相比,GB28181协议更加专注于视频监控系统的需求,并提供了特定的功能和接口。协议所包含的主要功能有以下几点:

  • 设备注册管理
  • 设备信息查询、目录查询、状态查询
  • 实时预览
  • 录像查询、回放和下载
  • 设备控制(云台控制、布/撤防、辅助开关等)
  • 语音广播和语音对讲
  • 报警事件通知和分发
  • 校时
  • 订阅和通知

GB28181设备端整体架构

国标GB28181协议客户端开发(一)整体流程和技术选型

  • 网络层:负责设备的网络连接和通信。

  • 管理控制层:处理设备的控制指令、管理请求、录像存储和检索。

  • 媒体层:负责音视频编解码和媒体文件的解析。

GB28181设备端的运作流程

国标GB28181协议客户端开发(一)整体流程和技术选型

  1. 启动设备:设备端启动后连接网络,并初始化各个模块。

  2. 建立RTP/RTCP网络:设备端需要在启动后,初始化RTP/RTCP网络,用于之后与平台之间建立媒体通道,进行音视频流的传输。

  3. 注册平台:设备向指定的平台发送Register注册请求,包括SIP设备ID、IP地址、SIP端口等关键信息。这里面会有一个两次注册的流程,用于GB28181平台进行密码校验,这个以后会说。

  4. 心跳保活:设备定时向平台发送心跳消息,以保持与平台的连接。

  5. 响应平台管理请求:设备接收来自平台的管理请求,如设备目录查询、状态、信息等操作,然后根据请求做出相应的响应。

  6. 实时预览:设备接收来自GB28181平台的实时预览请求,将实时的音视频流,组合成RTP报文,发送给请求方。

  7. 录像存储、查询与回放:设备进行录像存储,将录像数据按时间段进行分割和存储。在GB28181平台发送录像回放请求时,设备根据请求将对应时间段的录像数据,组合成RTP报文,发送给请求方进行回放。

  8. 报警处理:设备接收报警触发信号,并发送报警通知给GB28181平台。在接收到报警处理请求时,设备可以进行相关处理,如触发报警音频、视频推送等。

  9. 网络连接保持:设备端需要保持与GB28181平台的稳定网络连接,处理网络断开和重连等异常情况。

  10. 关闭设备:设备端接收到关闭指令时,或者主动断开时,都需要对正在进行的RTP数据链路,发送相应的SIP bye报文,并进行相关资源的释放。

这其中,关键的几个步骤是注册、心跳、设备目录查询、实时预览以及网络连接维护这几项,只有实现这几点,才能算是一个基本的GB28181设备端。

技术选型

选择合适的技术对于GB28181协议设备端的开发至关重要。以下是一些关键技术的选型建议:

  • 开发语言和框架:项目开发,通常都是根据项目需求以及开发团队的技术背景,选择合适的开发语言和框架。根据本次项目需求,我是采用C++来实现底层进程,采用QT来做界面设计。

  • SIP协议库:选择一个稳定、成熟的SIP协议库,用于处理信令交互。常见的选择有PJSIP、JAIN-SIP、oSIP、eXosip等等,考虑到网上资料的成熟性,选择eXosip来作为SIP基础库。当然,这里面由于SIP信令都是类似于HTTP的文本协议,也可以考虑自己来实现。或者直接采用Node.js来做,由于我是C++实现整套工程,所以选择了eXosip。

  • RTP协议库:为了实现音视频流的传输,可以选择支持RTP/RTCP协议的底层库有很多,例如JRTP、ortp、live555,考虑到RTP本身并不复杂,可以自己实现,这里我采用了后者。

  • 媒体库:由于GB28181设备端需要提供视频/音频流,涉及到视频文件读取、解码、编码等多种功能,采用ffmpeg是最合适的方案。


合作请加WX:hbstream或企鹅:229375788。(转载请注明作者和出处)

合作请加作者hbstream(http://haibindev.cnblogs.com),转载请注明作者和出处文章来源地址https://www.toymoban.com/news/detail-481931.html


到了这里,关于国标GB28181协议客户端开发(一)整体流程和技术选型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【视频中间件】国标(GB28181)协议接入并输出标准FLV/RTSP/HLS流

    在安防行业发展的今天,现目前很多企业单位均建设有视频管理平台,跨部门、跨系统的视频资源联网共享需求也越来越多,随着网络高速提升与发展,视频数据的互联互通共享也变得更加的便捷。目前视频平台互联最为常见的互通协议就是GB/T 28181,随着协议的不断完善及成

    2024年04月12日
    浏览(35)
  • 视频集中存储/云存储平台EasyCVR国标GB28181协议接入的报文交互数据包分析

    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。视频汇聚融合管理平台EasyCVR既具备传统安防视频监控

    2024年02月11日
    浏览(41)
  • 国标GB28181协议EasyCVR启动失败报错“Local Machine Check Error”的解决方法

    国标GB28181安防监控系统EasyCVR平台采用了开放式的网络结构,可支持4G、5G、WiFi、有线等方式进行视频的接入与传输、处理和分发。安防视频监控平台EasyCVR还能支持GIS电子地图模式,基于监控摄像头的经纬度地理位置信息,将场景中的整体安防布控以可视化地图方式呈现,管

    2024年01月25日
    浏览(59)
  • 云备份客户端——客户端整体设计框架以及实用类工具实现

    客户端要实现的功能和服务端相比相对简单,客户端要实现的功能是 自动对指定文件中的文件进行备份,也就是定时对指定文件进行扫描,根据文件信息判断文件,符合要求(新文件或者被修改过的文件)进行上传 因此我们客户端大概需要实现下面三个模块 数据管理模块:

    2024年02月09日
    浏览(55)
  • 国标GB28181

    为了解决平台之间互通问题, 比如A平台大连交警系统需要看B 平台: 上海交警系统视频, 需要对接过来, 实现调度视频. 这时需要知道他们取流协议; 国家就因此制定了这个GB28181国标实现A与B平台相互取流,是一个应用层协议,不是基础的通信协议; GB28181协议信令层面使用的SIP协议

    2024年02月03日
    浏览(38)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-2 项目开发

    这篇文章主要是分享QT智能家居项目的代码 在我看来,QT MQTT的使用主要难点就是对于环境的搭建,在我们把环境搭建完之后,接下来就是传统手艺了,我们只要知道相应的库函数,调用它,就能实现我们所需要的功能了。 所以,在这里我也只是简单的分享一下我写的第一版

    2024年02月16日
    浏览(52)
  • 视频国标GB28181及一个相关平台的应用

    所谓国标GB28181,是我国制订的一项视频流接入协议。好处是,只要摄像头支持该项协议,那么无论是海康还是大华,或者别的什么摄像头,都能接入一个支持该协议的媒体平台,达到无缝集成、统一管理的目的。 对普通用户来说,假如拥有好几个厂商的摄像头,海康也、大

    2024年02月11日
    浏览(48)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-1 环境搭建

    前端时间做了一个项目,要求在PC端使用QT制作一个客户端,用来接收从单片机上传到Onennet的数据,并且还要下发指令。当时弄了好几天,中途遇见了非常多的问题,所以写下这篇文章记录一下,同时分享一下自己的经验。 我的环境:QT 5.12.6 总结下我遇见的难点: 1,环境配

    2024年02月11日
    浏览(69)
  • Python物联网开发-Python_Socket通信开发-Python与Tcp协议物联网设备通信-Socket客户端

            Python在物联网开发中的重要愈来愈重,因此,掌握Python语言与物联网设备之间的通信就显得尤为重要,可以通过编写Python程序实现获取物联网设备的传感器数值并可以更改物联网设备上的执行器状态。         首先,当使用Python进行Socket通信时,需要导入Python的so

    2024年02月17日
    浏览(70)
  • 国标GB28181视频融合监控汇聚云平台的方案及场景

    Liveweb国标视频融合云平台基于端-边-云一体化架构,部署轻量简单、功能灵活多样,平台可支持多协议(GB28181/RTSP/Onvif/海康SDK/Ehome/大华SDK/RTMP推流等)、多类型设备接入(IPC/NVR/监控平台),在视频能力上,可实现视频直播、录像、回放、检索、云存储、告警上报、语音对讲、

    2024年01月20日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包