前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >国标协议GB28181视频云服务EasyGBS播放两个相似ID的视频通道出现串流现象的问题优化

国标协议GB28181视频云服务EasyGBS播放两个相似ID的视频通道出现串流现象的问题优化

原创
作者头像
TSINGSEE青犀视频
修改2021-05-13 14:47:07
8890
修改2021-05-13 14:47:07
举报
文章被收录于专栏:TSINGSEE青犀视频TSINGSEE青犀视频

作为支持国标GB28181协议的视频平台,EasyGBS经常被拿来用作下级平台或者上级平台于客户现场的第三方平台进行级联,稳定性高、扩展性强也是EasyGBS级联过程中一个显著的特点。

当EasyGBS作为上级平台时,接入下级平台后,假如下级平台有两个相似ID的通道接入,那么在播放这两个通道的时候会出现两个通道串流的问题。比如下图,为两个相似ID的不同通道,但是播放的时候却都是播放了同一个画面。

通过排查代码发现是本地推流地址规则,在两个摄像头ID相近的时候,推流地址是相同的,这一点我们需要继续做优化。我们修改代码如下,将推流地址修改为设备id+通道id+十位固定数据的方式。参考代码如下:

代码语言:javascript
复制
func (server *MediaServer) GetWSFLV_URL(app, devid, channelid, senderID string) string {
       return fmt.Sprintf("ws://%s:%d/ws_flv/%s/%s_%s_%s.flv", server.StreamUrlIP, server.HTTPPort, app, devid, channelid, senderID)
}

func (server *MediaServer) GetWSSFLV_URL(app, devid, channelid, senderID string) string {
       return fmt.Sprintf("wss://%s:%d/ws_flv/%s/%s_%s_%s.flv", server.StreamUrlIP, server.HTTPSPort, app, devid, channelid, senderID)
}

func (server *MediaServer) GetHTTPS_FLV_URL(app, devid, channelid, senderID string) string {
       return fmt.Sprintf("https://%s:%d/flv/%s/%s_%s_%s.flv", server.StreamUrlIP, server.HTTPSPort, app, devid, channelid, senderID)
}

再次分别播放两个通道视频,发现播放通道已经纠正,没有串流现象:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档