0
点赞
收藏
分享

微信扫一扫

开发那些事儿:EasyCVR实现华为设备SDK的接入

EasyCVR是一个集视频联网共享、存储、流媒体转发、视频转码、视频上云、智能分析等多种功能为一体的流媒体视频服务融合型平台。平台支持接入的协议十分广泛,包括主流标准协议GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,如海康Ehome、海康SDK、大华SDK等(更多SDK与私有协议在持续拓展中)。

开发那些事儿:EasyCVR实现华为设备SDK的接入_流媒体

今天和大家分享一下EasyCVR平台如何实现华为SDK的设备接入方式。

开发那些事儿:EasyCVR实现华为设备SDK的接入_流媒体_02

技术实现逻辑:

前端传递新添加的设备类型,后端根据类型进行对应的消息发送,来实现华为设备SDK的接入。

添加如下代码,判断前端传入的设备类型,如果传入的是华为的SDK类型,则对相应的IP和端口发送相应的接入消息,然后查询设备的通道信息,再根据返回值进行入库操作。

开发那些事儿:EasyCVR实现华为设备SDK的接入_流媒体_03

if devObj.DeviceType == "huawei" {
strattime, err := time.ParseInLocation("20060102150405", stime, time.Local)
if err != nil {
ack.EasyDarwin.Header.ErrorNum = fmt.Sprintf("%d", http.StatusBadRequest)
ack.EasyDarwin.Header.ErrorString = err.Error()
c.IndentedJSON(http.StatusOK, ack)
return
}
strattime = strattime.Add(time.Hour * -8)
endtime, err := time.ParseInLocation("20060102150405", etime, time.Local)
if err != nil {
ack.EasyDarwin.Header.ErrorNum = fmt.Sprintf("%d", http.StatusBadRequest)
ack.EasyDarwin.Header.ErrorString = err.Error()
c.IndentedJSON(http.StatusOK, ack)
return
}

添加过后,查看页面通道,已经可正常显示。

开发那些事儿:EasyCVR实现华为设备SDK的接入_json_04

EasyCVR视频能力灵活、拓展性强、部署轻快,可支持分发RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流,在线下场景中应用广泛,包括智慧工地、智慧工厂、智慧校园、智慧社区等等。平台基于云边端一体化管理,具有强大的数据接入、处理及分发能力,兼容性强、开放度高,功能可灵活拓展,轻松与第三方集成,可满足更高级的业务需求。

举报

相关推荐

0 条评论