EasyCVR视频协议融合平台不仅支持常规协议的接入,我们还拓展了海康SDK、大华SDK、Ehome等私有协议。如果前端设备协议不同且数量较多,则可以通过EasyCVR平台来对所有视频通道做整合和统一管理,同时EasyCVR也支持与其他支持GB28181协议的平台级联。
在最近的开发中,我们对EasyCVR的功能也进行了优化,添加了流量统计功能,该功能需要统计每个通道以及设备接收的流量和发送的流量。
添加如下代码,在请求播放接口的时候,从流媒体中获取当前播放的信息,从中筛选出接收流量以及发送流量,然后将其存入到数据库中。前端点击查询的时候,按时按天按月的返回给前端。
select {
case <-ticker.C:
module := utils.Conf().Section("base_config")
trafficSumDay := module.Key("traffic_sum_day").MustInt(1)
err := cvrservice.GetDeviceService().DeleteStreamLog(time.Now().Add(time.Hour * 24 * -time.Duration(trafficSumDay)))
if err != nil {
log.Println("err,", err.Error())
time.Sleep(time.Second * 3)
continue
}
groups, err := mediaserver.GetLiveSessions()
if err != nil {
log.Println("err,", err.Error())
time.Sleep(time.Second * 3)
continue
}
复制代码
添加过后,前端点击播放展示如下效果,能够正确返回播放流地址:
同时我们也可以直观看出流量的变化。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。