流媒体服务器最主要的作用就是进行视频流的转码分发,比如EasyGBS视频平台,可通过国标GB28181协议将视频流转化成可播放的视频。目前EasyGBS可以输出RTMP、HLS、FLV三种格式的视频流。

在新版的EasyGBS视频平台开发过程中,我们新增了ws_flv的视频流,拓宽了输出视频流的格式,但是在测试过程中却发现ws_flv视频流播放不了,显示黑屏。

经排查是因为项目本身使用https访问是加密的(https接入我们国标流媒体服务器视频无法播放),但此时后端返回给前端的flv地址是ws的,获取视频的地址错误,这才导致了视频无法播放。

所以我们在访问websocket请求连接的时候不能用ws,而是要用加密版的wss,后端在初始化流数据的时候定义一个wss的播放地址:

stream = &sip.Stream{StreamID:   streamid,DeviceID:   sipDev.DeviceID,SenderID:   sipChannel.DeviceID,SenderName: sipChannel.Name,SenderSeq:  subject.SenderSeq,MSDeviceID: ms.Serial,SSRC:       SSRC,Transport:  transport,UseForSnap: useForSnap,StartAt:   time.Now().Format(utils.DateTimeLayout),FLV:       ms.GetFLV_URL("hls", sipDev.DeviceID, subject.SenderSeq),HTTPS_FLV: ms.GetHTTPS_FLV_URL("hls", sipDev.DeviceID, subject.SenderSeq),RTMP:      ms.GetRTMP_URL("hls", sipDev.DeviceID, subject.SenderSeq),HLS:       ms.GetHLS_URL("hls", sipDev.DeviceID, subject.SenderSeq),HTTPS_HLS: ms.GetHTTPS_HLS_URL("hls", sipDev.DeviceID, subject.SenderSeq),WS_FLV:    ms.GetWSFLV_URL("hls", sipDev.DeviceID, subject.SenderSeq),WSS_FLV:   ms.GetWSSFLV_URL("hls", sipDev.DeviceID, subject.SenderSeq),RTSP:      ms.GetRTSP_URL(sipDev.DeviceID, subject.SenderSeq),CDN:       cdn,Record:    sipChannel.Record,}

然后给前端返回播放地址的时候,对项目进行判断,是否需要加密,如果需要加密则返回wss加密后的地址

stream.UseForSnap = falseflvURL := stream.FLVws_flvURL := stream.WS_FLVhlsURL := stream.HLSrtmpURL := stream.RTMPrtspURL := stream.RTSPif c.Request.TLS != nil {flvURL = stream.HTTPS_FLVhlsURL = stream.HTTPS_HLSws_flvURL = stream.WSS_FLV}

前端再次播放拿到wss的地址时,则播放正常。

如何解决国标GB28181协议流媒体视频平台新增ws_flv视频流无法播放问题?相关推荐

  1. 如何解决国标GB28181协议EasyGBS视频平台CPU占用过高的情况?

    CPU(中央处理器)作为计算机系统的运算和控制核心,是信息处理.程序运行的最终执行单元.之前我们解决过TSINGSEE青犀视频云边端架构中国标平台EasyGBS播放H265编码视频后CPU过高的问题( ...

  2. 设备以国标GB28181协议接入视频平台时可能会遇到的问题

    国标GB28181协议作为比较常用并且十分好用的视频接入协议,但是在使用过程中往往也会遇到各种各样的小问题. 这边列举两个我在接设备时常遇到的问题: Sip设备编号重复 新加设备与平台原有设备编号重复 ...

  3. 国标GB28181安防视频平台EasyGBS配置完成之后无法播放的问题排查步骤与解决

    EasyGBS是基于国标GB28181协议的视频平台,它的特点是支持设备以GB28181协议接入,可对视频进行解码.处理.分发等服务,兼容全平台.全终端.在视频能力上,EasyGBS可以实现视频监控直 ...

  4. 如何解决海康大华摄像头接入国标GB28181协议视频平台EasyGBS播放视频流,出现多个播放器的问题?

    我们在前段时间更新了支持国标GB28181协议的视频平台EasyGBS,有很多用户都已经更新使用了,并且反响都比较好,新增的视频调阅功能满足了大部分人对直播界面直观显示的需求,所以我们仍在不断进行新的 ...

  5. 国标GB28181协议平台EasyGBS被国外IP攻击后如何快速删除这些垃圾设备?

    随着计算机技术和互联网技术的快速发展,网络安全问题也日益突出和复杂.尤其是进入大数据时代,视频监控的数据资源价值更加显著,因此很容易被不法分子盯上,特别是在视频网络的传输中,大多数的前端接入设备要靠公 ...

  6. 海康硬盘录像机NVR如何接到国标GB28181协议国标视频云服务平台EasyGBS

    经常碰到用户咨询我们,TSINGSEE青犀视频研发的视频平台能否支持海康的硬盘录像机接入,由于对现场没有录像回看的需要,因此仅用硬盘录像机就能满足录像功能,这种情况下能否用我们的流媒体视频平台. 刚好 ...

  7. 国标GB28181协议视频平台EasyGBS新增首次登录强制修改SIP密码功能

    随着大数据.物联网.移动互联网等技术的进步,网络视频监控的规模化应用也得到快速发展.近年来,由于计算机硬软件.网络协议和结构以及网络管理等方面不可避免地存在安全漏洞,使得网络攻击成为可能.网络安全风险 ...

  8. 【解决方案】基于国标GB28181协议/HIKSDK/Ehome协议EasyCVR智能融合分析平台在智慧校园人脸识别中的应用

    一.建设背景 随着社会的发展,学校规模不断扩大,给校园的安全和科学管理带来了非常大的挑战:随着学校的开放性管理,特别是高校,进出人员复杂,给学校的人员财产安全管理,带来了非常大的挑战.学校安保工作越来 ...

  9. 设备通过国标GB28181协议接入EasyCVR,报错“504 Gateway Time-out”是什么原因?

    EasyCVR基于云边端一体化架构,能支持海量视频的轻量化接入与汇聚管理.在视频能力上,可提供视频监控直播.视频轮播.视频录像.云存储.回放与检索.智能告警.服务器集群.语音对讲.云台控制.电子地图. ...

最新文章

  1. 沙盘正在注销进程start_进程,线程,多线程
  2. MySQL之alter语句用法总结
  3. 工艺路线和工序有差别吗_ERP-工序与工艺路线
  4. SpringBoot + RabbitMQ (保证消息100%投递成功并被消费)
  5. 003_Spring使用Slf4j和logback日志
  6. linux大容量硬盘 克隆到小硬盘_Linux添加新硬盘的挂载方法
  7. if __name__ == __main__:什么意思_好冷的Python if __name__==__main__是啥东东
  8. 学习Asp.net MVC相关资料
  9. python常用函数import_python 常用函数集合
  10. 关于MySQL内存泄露如何排查的一些思路
  11. 软件加密狗破解思路和防破解的博弈之路
  12. 同名的同义词和视图解惑
  13. ajax的Provisional headers are shown
  14. RDIFramework.NET ━ 9.10 岗位(职位)管理 ━ Web部分
  15. UVA 11538 : Chess Queen
  16. laravel 实现队列功能
  17. poi生成word文档 表格自适应问题
  18. IDEA注释模板设置【非常实用】
  19. NancyFX 第五章 Nancy 路由
  20. 便捷效率处理CAD转PDF方法你知道吗?

热门文章

  1. 数字推理题题型简介及应对策略 zz
  2. springMvc接口开发--对访问的restful api接口进行拦截实现功能扩展
  3. Histograms of Oriented Gradients (HOG)理解和源码
  4. Linux 环境配置
  5. Python—一键实现Excel自动分组合并单元格
  6. python怎么识别鼠标的动作_使用python检测窗口中的鼠标点击
  7. [转]Java字符串转换为日期和时间比较大小
  8. 文件I/O与系统编程
  9. 计算机毕业设计Java智能健身房管理(源码+系统+mysql数据库+lw文档)
  10. 程序员管用20年的基本功,N倍放大工作效果