EasyDSS是TSINGSEE青犀视频团队很早就研发的一款支持RTMP协议的视频流媒体平台,在近两年优化更新后,其功能进一步发展,已经是一款完善且稳定的RTMP视频平台,在很多视频监控项目中都提供了视频能力。

上一篇我们讲了EasyDSS的虚拟直播推流,需要对虚拟直播分享的用户肯定会对分享的方式有需求。EasyDSS的虚拟直播可以通过二维码分享,也可以通过链接地址分享。

如果通过链接地址的方式分享,按理来说地址直接在网页就可以访问,但实际测试该地址却显示无信号,无法播放视频。

我们打开页面的开发者模式可以看到,请求的接口中没有播放地址,所以页面中出现无信号的情况。

我们编译的代码逻辑是如果要将视频资源推送到直播间,则需要查询直播间的播放数据,代码在该处会判断是否将视频资源推送到直播间,如果是的话,将主键id传入,查询到对应的数据以及播放地址就会正常播放,如果不是,则查询不到对应的播放地址,则显示无信号。

vlive := dao.TVlive{}
dao.GetDB().First(&vlive, consts.SqlWhereID, id)
if vlive.ID != consts.EmptyString && vlive.Shared {
   if cdn.IsNeedPushCdn(ptype) {
      session = cdn.Start(id)
   } else {
      if vlive.Target != consts.EmptyString {
         session = *dss.GetLiveSessionInfoByHost(vlive.Target, host, token)
      } else {
         session = *dss.GetLiveSessionInfoByHost(id, host, token)
      }
   }
   c.AbortWithStatusJSON(http.StatusOK, NewVLiveRowWithSession(c, vlive, &session))
   return
}

因此我们要修改代码,获取对应的播放数据和地址,视频则可以正常播放。

关于EasyDSS的更多内容,大家可以关注我们博客了解,当然EasyDSS也支持测试,欢迎大家测试。

posted on 2020-12-22 17:26  EasyDSS  阅读(94)  评论(0编辑  收藏  举报