本文探讨的是,基于GB28181设备接入更进一步的处理:录像查询和录像下载,本文以我们Android平台开发的GB28181设备接入为例,做个简单的分析。 本地录像存储图片GB28181设备接入侧,非常重要的功能属性就是实时录像,我们在做实时录像的时候,设计如下:先说录像参数设置:/** * SmartPublisherJniV2.java * Author 的录像查询和处理,我们会把录像的文件,文件名做一定的处理,比如加上开始、结束时间还有duration和file size。 平台的录像查询和录像下载,实时录像的处理必不可少。 下一章节,我们将根据GB28181规范探讨录像查询和录像下载。
去年我们对EasyGBS等平台新增了告警录像的功能,当EasyGBS的底层数据收集上来后,在对原始数据解析后增加了告警计算后,将告警信息持久化,当监测有异常情况时,系统就会自动截取快照并记录时间。 有用户反馈,在EasyGBS的告警录像列表中,在右侧边栏点击单个设备通道,查询不到该设备告警录像列表,如下所示: 获取所有的告警列表,显示正常: 查询单个设备返回空: 于是我们进一步排查,查看sql t_alarm.device_id = '34020000001320000091' and t_alarm.channel_id = '3402 0000001320000001' 效果如下图: 代码逻辑: 此外,国标GB28181
TSINGSEE青犀视频开发的国标GB28181协议视频智能分析平台EasyGBS已经兼容了采集-存储-展示-告警这四大模块的内容处理,能够为大数据平台的搭建提供视频能力上的支持。 实现该需求还是比较简单的,首先接收告警消息,然后再通知触发系统录像模块,指定告警视频的存储路径区分开别的录像。 当设备接收到告警的时候,通知系统录像模块开始录像,并且记录录像记录id,来生成对应的录像记录。 - r } return true }) MsgDispatcher.AddListener(l) defer MsgDispatcher.RemoveListener(l) 点击播放告警录像展示效果
实现Android平台GB28181设备接入的时候,有个功能点不可避免,那就是本地录像,实际上,在实现GB28181设备接入模块之前,我们前些年做RTMP推送和轻量级RTSP服务的时候,早已经实现了本地录像功能 图片本地录像功能,我们实现的主要控制接口如下:音视频录制开关,为了更细粒度的控制录像,如只需要录纯音频还是纯视频,或者音视频,可以通过下述两个接口实现:/** * 音频录制开关, 目的是为了更细粒度的去控制录像 、暂停录像、停止录像,说到这里,好多开发者可能对暂停/恢复录像,比较感兴趣,实际上,我们在具体使用场景下,并不是所有的数据,都想录制下来,比如智慧教室,下课时间,我们无需录制,这时候,只要调用PauseRecorder 来暂停录像,等上课后,恢复录像即可。 GB28181上去的数据,是同一路编码数据,当然,如果做的更智能一些,也可以分两个实例来实现,一路编码用于GB28181平台接入,一路高分辨率帧率,用于本地录制,具体根据使用场景定制即可。
国标GB28181协议视频平台EasyGBS是我们推出的一项在业内使用比较广泛的视频流媒体服务平台,它是基于公安部推出的国标GB/T28181协议,可以实现视频直播、视频分发、云端录像、存储、检索与回放 在云端录像方面,EasyGBS支持7*24小时录像,支持录像检索与回放,并可以通过时间轴精准拖动查看录像回放,在安防监控领域,视频录像功能可以有利于工作人员在调查时进行视频调阅、取证、追责。 因此,我们在该项中增加了云端录像计划开启关闭选项,用以区分录像文件,同时还添加了模糊查询,便于用户检索。 前端页面展示效果如图: 后端判断录像计划是否开启主要代码逻辑: 模糊查询参考代码: 随着城市智能化的进程不断推进,我国安防行业的市场需求逐渐被激发。 EasyGBS在安防监控行业的应用上除了视频接入、转码、处理及分发服务外,还拥有国标平台级联、语音对讲、经纬度定位、告警查询、用户管理、权限管理、设备管理等功能。
常用的SIP消息有注册、心跳、设备搜索、设备状态查询、设备控制等。 数据传输: GB28181协议使用RTP来传输音视频流。 协议所包含的主要功能有以下几点: 设备注册管理 设备信息查询、目录查询、状态查询 实时预览 录像查询、回放和下载 设备控制(云台控制、布/撤防、辅助开关等) 语音广播和语音对讲 报警事件通知和分发 校时 实时预览:设备接收来自GB28181平台的实时预览请求,将实时的音视频流,组合成RTP报文,发送给请求方。 录像存储、查询与回放:设备进行录像存储,将录像数据按时间段进行分割和存储。 在GB28181平台发送录像回放请求时,设备根据请求将对应时间段的录像数据,组合成RTP报文,发送给请求方进行回放。 报警处理:设备接收报警触发信号,并发送报警通知给GB28181平台。 这其中,关键的几个步骤是注册、心跳、设备目录查询、实时预览以及网络连接维护这几项,只有实现这几点,才能算是一个基本的GB28181设备端。
EasyGBS是基于GB28181协议的视频平台,拥有视频直播、录像、存储、检索与回放、云台控制、告警上报、语音对讲、平台级联等功能。 现有用户反馈,其定制版EasyGBS在使用多线程录像查询时,宇视sdk录像查询会出现错误码4128,导致录像查询失败。收到反馈后,技术人员立即进行了排查。 打开日志查询,发现在进行多录像查询时,第一个录像查询返回错误,错误码是:4128;而第二个查询录像则直接返回成功。这说明只有一个录像查询成功。 随后从文档中查看“4128”错误码代表的意思,如下图:其含义为:在进行多录像查询时,由于上一个录像查询没有完成,就进行下一个查询操作,这样会导致只有一个查询录像会有失败的情况。 找出问题原因后,参照以下操作即可解决:从文档中得出只有当一个录像查询完成才能进行下个录像查询,在多录像查询的失败加上一把录像查询的锁即可,代码如下:除了提供API接口供用户调用、集成与二次开发,EasyGBS
EasyCVR视频结构化平台支持的协议广泛,其中就包括GB28181协议及海康摄像头常见的Ehome协议。 有的项目现场将硬盘录像机通过GB28181协议接入到EasyCVR平台后,直播预览正常,但是播放设备录像时则出现无法加载画面的情况。 直播预览画面正常: image.png 播放设备录像一直加载: image.png 因此我们对系统进行wireshark抓包,抓包文件如下: image.png 通过以上信息,可以看出GB28181点播设备录像的 有可能是设备不支持TCP发送设备录像,因此我们尝试通过将配置界面中的传输协议由TCP改为UDP来解决该问题。 修改后设备录像能够成功播放。
EasyGBS视频平台可基于公安部推出的国标GB28181协议,对设备进行接入、视频转码、直播、分发、录像、回看、语音对讲、告警上报、云台控制、平台级联等,只要设备支持GB28181协议,都能接入EasyGBS 除此之外,EasyGBS还能支持平台级联,既能作为下级平台级联到支持GB28181协议的上级平台,也能作为上级平台,让下级平台通过GB28181协议进行级联,实现视频资源的有效共享与调度。 今天就来和大家分享一个定制功能的设计逻辑:EasyGBS可对非GB设备的云端录像进行删除。 实现逻辑: 在传入删除通道录像文件时,进行类型判断,如果是非GB设备,则对路径进行处理,然后查询是否存在,再进行删除。 添加如下代码,接收前端传入的删除设备类型参数,然后格式化文件录像路径,对其确认查询过后,进行删除。
国标视频云服务EasyGBS支持设备/平台通过国标GB28181协议注册接入,并能实现视频的实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。 国标GB28181设备接入EasyGBS平台后,平台有两种拉流方式:1)拉取实时流点播;2)拉取设备录像。 目前EasyGBS拉取实时流点播可以设置收流IP,但是在设备录像点播中没有设置收流IP,导致设备录像不能播放。因此,我们对代码进行了优化,实现了设备录像也可以设置收流IP。 代码逻辑:将实时点播中设置的收流IP,继承到设备录像回放点播中,在invite消息中重新设置新的收流IP。 参考代码如下:EasyGBS国标视频云服务可支持云端录像,也能支持通过GB28181协议/海康Ehome等获取设备的录像,在功能上,可实现录像的检索、回放以及存储与下载等操作,十分灵活。
音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集群、语音对讲、云台控制、电子地图、H.265自动转码H.264 在EasyCVR的用户现场,有用户提出,在使用云端录像时,使用时间轴设置录像计划,只能选择到23:59,不能选择到时间24:00,导致设置的云端录像会每天少一分钟。
国标平台EasyGBS有接入设备录像的功能,正常情况下,只要设备录像正常、国标的机制正常,都可以接入EasyGBS录像。 在有的项目需求中,用户需要调用项目录像,本文我们介绍下EasyGBS如何通过接口下载设备录像。 StreamID带入里面获取下载文件链接: image.png image.png 然后将这个链接直接访问下就开始下载了,并且能获取文件大小: image.png 接口调用可实现很多功能,除了本文讲到的调用设备录像到播放器里播放 ,还可以调用云端录像接口在其他平台播放。
2.1、设备录像2.2、云端录像3、搭建GB28181视频直播平台1、平台概述28181协议全称为GB/T28181《安全防范视频监控联网系统信息传输、交换、控制技术要求》,是由公安部科技信息化局提出, LiveGBS是基于GB28181,为了满足可以集中统一管理和观看所有摄像头、硬盘录像机等设备而设计的,将传统安防摄像头实现Web播放。 支持设备|平台GB28181注册接入、向上级联第三方国标平台, 可视化的WEB页面管理;支持云台控制、设备录像检索、回放,支持语音对讲,用户管理, 多种协议流输出,实现浏览器无插件直播等。 、云端录像查询WEB云端录像菜单,支持分布式录像统一的回看查询2.2.2.2.1、列表模式支持录像快速查询,播放、下载及相关的删除操作,在云端录像通道列表点击 [查看录像]2.2.2.2.2、时间轴模式右上角点击可以切换成 10000/apidoc/#api-cloudrecord在线文档https://gbs.liveqing.com:10010/apidoc/#api-cloudrecord2.2.3.2、云端服务器录像接口查询云端录像通道按通道统计所有录像按月查询通道录像按日查询通道录像删除单条录像删除通道所有录像按天删除通道录像重要录像标记下载录像文件指定时间段录像播放及下载
在这样的背景下,安卓平台GB28181设备接入能力成为可视化调度平台的重要基础模块。 信令与媒体协议支持功能项支持情况视频封装格式支持纯视频、音视频PS打包RTP传输协议支持 RTP over UDP / TCP 被动模式(客户端拉媒体流)信令传输协议支持TCP/UDP两种信令传输方式注册与注销支持注册/注销,注册刷新及有效期设置目录查询应答支持设备目录应答 GB/T 28181—2016、GB/T 28181—2022 完整兼容 音视频互动与回放控制功能项支持情况语音广播支持SIP语音广播下发语音对讲支持上下行音频通道对讲云台控制支持云台旋转、缩放、预置位查询与调用图像抓拍支持平台下发命令后实时抓拍图像上传历史检索支持录像文件检索 、列表返回、起止时间查询录像下载支持指定历史文件下载至平台侧远程回放支持录像按时间回放推送功能️ 视频录像能力扩展(配合录像SDK使用)功能项支持情况本地录像存储支持实时推流过程中同步录制录像格式支持原始流录制 / 封装MP4文件均可配置与GB28181融合可同步录像回放能力对接到平台控制逻辑中✅ 平台对接兼容性 ✔ 完美对接主流国标平台:海康、宇视、大华、旷视、华为云GB28181接入平台; ✔ 可作为子设备注册至公安视频图像平台
视频监控作为安防行业中一种常见的技术手段,通过安装摄像头和监控设备,对特定区域进行实时录像和监控,以预防和处理各种安全问题。 技术人员在日常排查中发现,在LiteCVR设备录像中,当通道名称中带有特殊字符时,会出现请求地址下载异常,显示404,如下图:检查发现在传参数时,通道名称中带有了特殊符号#导致,下载地址#之后的数据就异常了
GB28181f平台服务侧,还需要具备远程监控、实时调度、历史数据查询和分析等功能。 本地录像与存储: 记录仪具备本地录像功能,可以将巡检数据以MP4等格式存储于设备内部。录像数据可以长期保存和备份,为后续的数据分析和审查提供支持。 打包传输;支持RTP OVER UDP和RTP OVER TCP被动模式(TCP媒体流传输客户端);支持信令通道网络传输协议TCP/UDP设置;支持注册、注销,支持注册刷新及注册有效期设置;支持设备目录查询应答 MobilePosition)订阅和通知; 适用国家标准:GB/T 28181—2016;支持语音广播;支持语音对讲;支持图像抓拍;支持历史视音频文件检索;支持历史视音频文件下载;支持历史视音频文件回放;支持云台控制和预置位查询 ]支持和录像SDK组合使用,录像相关功能。
其中,平台级联是指EasyCVR可作为下级平台,将所有视频通道通过GB28181协议级联到上级国标平台,且支持同一通道级联到多个上级平台。 image.png image.png 添加如下代码,当EasyCVR级联的上级平台,查询EasyCVR接入的设备录像时,需要将上级要查询的设备转换为EasyCVR平台上实际的设备,查询出对应的设备录像 = "ON" { log.Printf("通道[%s:%s] 离线", channelInfo.DeviceID, channelInfo.ID) return } 查询成功后,便进行播放 image.png EasyCVR平台支持7*24h录像,可通过时间轴精确控制录像回放,也支持获取设备端的录像: 支持获取海康、大华等前端设备/平台录像文件,进行录像回看 支持输出对应的HTTP接口,方便录像检索 、点播、回放功能的调用 image.png 在视频能力接入与分发上,EasyCVR不仅能支持标准协议(RTSP、RTMP、Onvif、GB28181等协议),还能支持厂家私有协议(海康/大华SDK、Ehome
近期我们一直在对EasyGBS的云端录像做测试,其中一个重要原因就是广大用户对云端录像的要求不断提高,因此对于云端录像的检查仍然是必不可少的一个环节。 在测试过程中,我们就发现在云端录像的查询结果跟想要查询的结果不同。 原本代码如下: 分析该段代码后我们猜测可能是由于EasyGBS根据通道ID查询结果不唯一,因为通道是自定义的可能会有重复。 = data.rows; this.total = data.total; }); }, 但是这样修改代码只能点击搜索一次,之后如果设备ID变了,通道ID不变,查询的数据则不会变 ,所以要在watch中监听设备ID,代码如下: Serial: function() { this.load(); }, 最后形成预览如下,查询的设备无通道的情况下正常显示无信息
EasyCVR视频融合云平台可支持多协议、多类型的设备接入,包括国标GB28181、RTSP/Onvif、RTMP协议,以及海康/大华SDK、海康Ehome等,对外可分发RTSP、RTMP、FLV、HLS 今天我们和大家分享一个技术干货:如何使用大华SDK工具查询和播放设备录像? 操作教程如下:1)打开大华SDK工具,接入通道;2)接入设备后,点击QuertRecord查询设备录像;3)点击之后,选择需要查询的通道号,然后选择查询的时间;4)查询之后,选择此录像段,查看是否可以播放 ;5)此设备录像可以查看与播放,表明设备录像传输无问题。 EasyCVR可拓展性强、部署轻快、视频能力灵活,平台可提供视频直播、录像、云存储、回放、平台级联、语音对讲、云台控制、服务器集群等功能,在线下场景中应用广泛,包括智慧工地、智慧工厂、智慧校园、智慧社区等
在EasyCVR集群中,出现了录像事件查询无效的情况。 在排查代码时发现,原来是缺少ServerID,导致逻辑中断,无法继续通过选择的时间进行查询和获取当日的录像:在此处增加对应的serverID(如图所示),逻辑则继续。 更改完之后,已经可以正常查询到集群的录像文件了。 EasyCVR平台可拓展性强、部署轻快、视频能力灵活,可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海康SDK、大华SDK等,