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也支持测试,欢迎大家测试。