国标GB/T28181使用EasyGBS实现HTTPS加密传输无法正常播放问题解析
背景分析
GB28181协议是由公安部牵头实现的安防行业统一的设备接入、流媒体传输的协议。GB28181解决了不同系统互联的问题,开放、清晰的接口,面向服务的系统架构,解决了资源管理的问题,资源的可视化、自动化管理,结合协议的状态查询和自动化视频质量检测,实现高效的系统资源管理。
GB28181开启了一扇解决系统互联的门,使我们看到了希望,但是需要更多的系统性的工作,才能真正走进这扇门。
发展目标
GB28181视频流媒体平台(以下简称“EasyGBS”)支持GB/T28181协议接入,平台中包含GB/T28181接入服务器和GB/T28181流媒体服务器。接入服务器用于接收设备注册并提供信息上报设备控制等,GB/T28181流媒体服务器用于接收设备推流并输出RTSP、RTMP、HLS、FLV直播流分发。
EasyGBS问题分析:使用EasyGBS实现HTTPS加密传输无法正常播放
前几天遇到一个客户,需要使用EasyGBS实现HTTPS加密传输,客户已经针对自己域名申请了证书并且正常配置到相关服务中去了,https页面也可以访问,前端设备也能正常接入,快照可以正常产生,但是一直无法正常在浏览器播放。
分析问题
针对这种情况,我们通过浏览器抓包,发现EasyGBS反馈给视频流是IP地址,并不是域名。
而该客户对应的证书是针对域名的,初步判断可能是证书对IP无效导致。将VLC中将IP地址更换为对应的域名后,可以正常播放。
解决问题
如何才能将播放地址输出为域名方式呢?通过和EasyGBS厂商沟通,了解到在EasyGBS的EasySMS配置文件中,有个隐藏的的参数wan_ip,wan_ip是针对浏览器或客户端请求视频流是输出的地址信息,该可以是IP,也可以是域名。通过添加该参数,并重启服务。https视频可以正常播放。
EasyGBS的核心功能:
(1)提供用户管理及Web可视化页面管理;
(2)提供设备状态管理,可实时查看设备是否掉线等信息;
(3)实时流媒体处理,PS(TS)转ES;
(4)实时快照、视频数据获取;
(5)设备状态监测;
(6)云台控制;
(7)录像检索、回放;
(8)提供RTSP、RTMP、HTTP-FLV、HLS等多种协议流输出;
(9)对外提供服务器获取状态、信息,控制等HTTP API接口。