EasyCVR视频广场扫码直播iOS端只能播放hls协议的流排查

2021-09-14 18:08:39 浏览数 (1)

大家知道今年我们首先在EasyGBS内添加了webrtc的播放协议,随后也逐渐将该协议普及到了EasyCVR、EasyNVR等其他的平台当中,比如EasyCVR平台,目前已经能够输出四种协议的视频流,且不同协议都支持安卓系统及iOS系统的扫码直播,分享便捷。

近期我们发现EasyCVR的iOS端扫码直播问题,即视频广场扫码直播iOS端只能播放hls协议的流,其他协议都播放不了。

这个问题其实跟iOS系统的直播协议有关,苹果系统默认使用video实现hls流的播放,其他协议的视频流苹果系统无法识别,所以无法播放。

因此解决该问题我们需要在分享页面判断iOS端还是Android端的播放请求,将路由传过来的protocol强制改成hls即可,参考代码如下:

代码语言:javascript复制
const u = navigator.userAgent, app = navigator.appVersion;
// const isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //g
const isiOS = !!u.match(/(i[^;] ;( U;)? CPU. Mac OS X/); //ios终端
if (isiOS) {
  this.query.protocol = 'hls'
}

修改后用iOS系统扫码则能实现自动播放hls流,解决效果如下:

TSINGSEE青犀视频团队在流媒体行业丰富的开发经验,使得EasyCVR的整个开发过程非常流畅,并且平台功能仍在持续拓展中。与其他视频平台不同的是,EasyCVR能够支持视频分析数据与多源数据融合,可通过智能分析算法挖掘价值数据,这也是EasyCVR的一个重要特点。如果大家对EasyCVR平台感兴趣,欢迎下载部署,实际测试,测试期间可自由调用二次开发接口,欢迎了解。

0 人点赞