随笔 - 936  文章 - 0  评论 - 3  阅读 - 30万

国标GB28181协议视频平台EasyGBS接入H265摄像头进行告警截图失败原因分析

TSINGSEE青犀视频开发的视频结构化智能分析平台EasyGBS、EasyNVR等现均已支持H265视频编码的播放,在配置中心界面即可自由设定是否启动H265播放器。

在测试EasyGBS接入H265摄像头的时候,出现摄像头设置告警过后无法进行告警截图的现象,进入数据库检查后发现里面是能够查询到记录的,所以排除告警消息设备没传递过来的情况。

查看代码,发现当设备接入视频类型为h265时,并没有添加告警的截图代码,因此无法调用H265设备的告警截图,所以添加如下代码,判定设备接入视频类型为265时候调用截图:

if f.Type == av.VIDEO_FRAME_I && msess.Snaping {
       msess.Snaping = false
       if err := msess.doSnap(data, f.Length); err != nil {
              sms_log.Log.Printf("snap error, %v", err)
       }
       module := utils.Conf().Section("module")
       is_alarm := module.Key("is_alarm").MustBool(false)
       if !is_alarm {
              return
       }
       if is_alarm {
              if err := msess.doAlarmSnap(data, f.Length); err != nil {
                     sms_log.Log.Printf("snap error, %v", err)
              }
       }
}

完善EasyGBS代码后再次触发告警查看是否有截图,截图正常显示,该问题已解决。

当设备包含报警布防功能,可以定义好设备的报警信息,EasyGBS即可获取到设备的报警信息,同步的抓取到所有设备记录的报警状态,将设备的报警级别、报警方式、报警类型、报警时间都统一的展示出来,是非常友好的告警上报方式,欢迎了解。

posted on   EasyGBS  阅读(84)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示