【疑难解决】RTMP协议WEB视频直播点播平台EasyDSS开启多个匿名直播后通道ID混乱问题优化

EasyDSS视频平台提供视频直播及点播功能,当然如果有调用视频录像回放的需求,也可以选择录像计划存储录像。并且支持EasyDSS与其他第三方平台对接,组合灵活自由。

EasyDSS架构绿.png

EasyDSS内支持匿名直播,但是我们测试发现,当推匿名直播到EasyDSS服务器上时,推入的第一个匿名直播没有问题,但是当推入第二个匿名直播后,第一个匿名直播的通道ID就变成了后者的通道ID。

12.png

我们在后台查看到匿名直播推的都是没有问题的,但是在代码层对数据进行筛选的时候出现了问题,将数据进行了错误的筛选,导致所有的数据都是重复的。

因此我们修改代码,在循环遍历集合数据的时候,在读取每条数据的时候,通过数组下标的方式获取数据,这样避免数据读取错误。

13.png

for i, row := range pageRows {
   //匿名直播添加websocket地址
   //row.WSFLV = strings.Replace(row.HTTPFLV, "/flv/", "/ws-flv/", 1)
   config := dao.SYSConfig()
   if config.Demo {
      //如果token
      token := security.GenerateJWTDemo("demo", "demo")
      if config.PlayAuthed {
         row.WSFLV = row.WSFLV + "&tokenDemo=" + token
         row.HTTPFLV = row.HTTPFLV + "&tokenDemo=" + token
         row.RTMP = row.RTMP + "&tokenDemo=" + token
         row.HLS = row.HLS + "?tokenDemo=" + token
      } else {
         row.WSFLV = row.WSFLV + "?tokenDemo=" + token
         row.HTTPFLV = row.HTTPFLV + "?tokenDemo=" + token
         row.RTMP = row.RTMP + "?tokenDemo=" + token
         row.HLS = row.HLS + "?tokenDemo=" + token
      }
   }
   list[i] = NewOpenLiveRow(&pageRows[i])
}

目前EasyDSS已经支持集成VR视频播放,具体可了解:视频智能分析/人脸识别平台EasyDSS实现景区智慧旅游体系,VR+大数据打造风景区实时视频。EasyDSS已经在电梯监控、无人机监控等项目中发挥了作用,如果还想了解更多视频相关解决方案,欢迎联系我们。

猜你喜欢

转载自blog.csdn.net/Black_3717/article/details/113759077