电话:0632-178627717
传真:035-805862389
邮箱:admin@jszhhg.com
地址:内蒙古自治区阿拉善盟漾濞彝族自治县预李大楼704号
EasyNVR演示模式下rtsp视频地址无法播放,是什么原因? TSINGSEE青犀视频云边端架构中许多产物由于开辟架构雷同,因此功效的实现历程或者呈现的问题等都有雷同的处所。好比我们先测试了EasyGBS演示模式下视频播放的问题,随后就发明了EasyNVR视频平台也呈现了同样雷同的问题。
EasyNVR演示模式下获取到的RTSP地址无法播放,演示模式是之前添加的新功效,主要是为了实此刻演示模式下,播放几分钟后(这个几分钟可以在设置文件设置的)断流,让这个流不能在播放。func wrapURLWithLiveToken(rawURL string, c *gin.Context) (wrapURL string) { wrapURL = rawURL demo := utils.Conf().Section("base_config").Key("demo").MustBool(false) if !demo { return } if rawURL == "" { return } _url, err := url.Parse(rawURL) if err != nil { return } q := _url.Query() //token := utils.MD5(sessions.Default(c).ID() + rawURL) token := createRandomString(8) q.Set("token", token) _url.RawQuery = q.Encode() wrapURL = _url.String() liveTokenCache.SetDefault(token, wrapURL) return } 该处代码就是在流地址后面添加token的处所。今朝EasyNVR对外提供的流有这几种格局的:WS-FLV、HTTP-FLV、HLS、RTMP、RTSP,个中前4种格局都是可以播放的,只有RTSP流地址比力特殊,该流地址后不能添加标识符,否则不能播放,我们将其解除出去即可。
if _url, ok := ack.EasyDarwin.Body["URL"].(string); ok { if !strings.EqualFold(params["protocol"], "RTSP") { ack.EasyDarwin.Body["URL"] = wrapURLWithLiveToken(_url, c) } } 这个处所先判断,假如想要获取RTSP流地址,就不举行token后缀的添加。这样返回的RTSP流地址就不会带有token后缀。返回,检察更多。
本文来源:鸭脖娱乐-www.jszhhg.com
电话:0632-178627717
传真:035-805862389
邮箱:admin@jszhhg.com
地址:内蒙古自治区阿拉善盟漾濞彝族自治县预李大楼704号