RTSP协议视频平台EasyNVR接入到EasyNVS管理平台后无法显示RTMP及RTSP视频流地址问题

本文介绍了一个关于EasyNVS视频综合管理平台中出现的RTMP和RTSP地址丢失的问题,该问题发生在通道配置修改之后。通过对代码的分析,找到了问题所在并提出了修复方案。

EasyNVS视频综合管理平台能够对接入的EasyNVR进行统一的管理,获取EasyNVR的所有能力,并进行互联网化输出,同时进行统一化的管理和接口输出。

NVS.png

由于很多场景都有外网访问内网的需求,因此EasyNVS的使用也变得频繁起来,咨询也开始多起来。也有客户通过EasyNVS穿透得到EasyNVR的RTMP和RTSP地址,但是我们在测试过程中偶尔会发现RTMP和RTSP地址丢失的情况。

在EasyNVS通道配置中查看通道,会发现RTMP及RTSP地址栏下面都是空。

85.png

86.png

对于此问题,我们首先本地启动一个EasyNVR,EasyNVR先开启一个通道,然后连接到EasyNVS上,查看通道列表,列表中rtmp和rtsp地址是有的,然后关闭通道在开启通道,在查看通道发现rtmp和rtsp地址没有了。

问题分析

分析是由于修改通道才导致rtmp和rtsp地址消失。观察代码发现是前端每次修改通道时都会向后端传递相应的数据。于是就在修改通道接口修改。

if nvc.RemoteRtmp != "" && nvc.Ip != "" {
   remoteRtmp := fmt.Sprintf("rtmp://%s:%s/hls/stream_%d", nvc.Ip, nvc.RemoteRtmp, form.ID)
   form.RemoteRtmp = remoteRtmp
}
if nvc.RemoteRtsp != "" && nvc.Ip != "" {
   remoteRtsp := fmt.Sprintf("rtsp://%s:%s/stream_%d", nvc.Ip, nvc.RemoteRtsp, form.ID)
   form.RemoteRtsp = remoteRtsp
}

解决效果

先开启3个通道都是有地址的。

87.png

然后再开启一个通道,查看这个新开的通道是否有地址。下面是开启4个通道的效果

88.png

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值