无延迟直播(PRTC Web SDK移动端)兼容性
PRTC Web SDK 是基于 WebRTC 实现音视频通信的,因此依赖于浏览器对 WebRTC 的支持。 尽管移动端主流的浏览器都支持 WebRTC,但是由于平台和一些应用内置浏览器的实现各不相同,移动端对音视频编解码的支持情况比较复杂,本文简单介绍移动端各种应用场景下对发送和接收音视频流的支持。
PRTC Web SDK移动端兼容的浏览器,具体如下表所示:
平台 | 浏览器 |
---|---|
Android 5.0+ | Chrome 60+ 华为手机浏览器 10+ 微信公众号/微信浏览器 7+ 内嵌 WebView 的应用(部分设备) |
iOS 13+ | 苹果Safari 13+ 微信公众号/微信浏览器 7+(仅支持接收) Chrome 60+(仅支持接收) 内嵌 WebView 的应用(仅支持接收) |
iOS 14.3+ | 苹果Safari 13+ 微信公众号/微信浏览器 7+ Chrome 60+ 内嵌 WebView 的应用 |
iOS 14.3以下的系统有限制,仅允许 苹果safari 浏览器 使用麦克风、摄像头设备;不允许 其他浏览器 使用麦克风、摄像头设备,因此iOS 14.3以下的系统中的微信浏览器、谷歌Chrome浏览器中无法发布视频流,仅支持接收。
iOS 14.3及以上的系统放开了设备权限,除了 苹果safari 浏览器,其他浏览器 如 微信浏览器、谷歌Chrome浏览器,可以申请 麦克风、摄像头设备的使用权限,因此iOS 14.3及以上的系统中的 微信浏览器、谷歌Chrome浏览器 可以支持连麦。
保利威无延迟直播增加的逻辑:iOS 13以下降级为CDN观看
ios 11 ~ 12 理论上支持无延迟,但只支持同时一个视频在播,并且存在较多兼容性问题所以降级为CDN播放
ios 14.2.x 版本因为ios系统的故障,存在声音异常的问题,所以降级为CDN播放
无延迟需要在https下播放
iOS平台的兼容性
iOS 平台上所有的应用内置浏览器只能使用系统提供的 WebView,iOS 14.3以下版本不支持发送音视频流,仅支持接收;iOS 14.3及以上版本支持连麦。
浏览器 | VP8 | H.264 |
---|---|---|
Safari 浏览器(支持发送和接收) | iOS 12.2 及以后版本 | iOS 11 及以后版本 |
微信公众号/微信浏览器 7+(支持发送和接收) | iOS 14.3 及以后版本 | iOS 14.3 及以后版本 |
Chrome 60+(支持发送和接收) | iOS 14.3 及以后版本 | iOS 14.3 及以后版本 |
内嵌 WebView 的应用(支持发送和接收) | iOS 14.3 及以后版本 | iOS 14.3 及以后版本 |
微信公众号/微信浏览器 7+(仅支持接收) | iOS 12.2 及以后版本 | iOS 12.1.4 及以后版本 |
Chrome 60+(仅支持接收) | iOS 12.2 及以后版本 | iOS 12.1.4 及以后版本 |
内嵌 WebView 的应用(仅支持接收) | iOS 12.2 及以后版本 | iOS 12.1.4 及以后版本 |
Android平台的兼容性
安卓平台原生的 WebView 支持自定义,因此不同设备、不同应用的 WebView 实现可能不同。下面列出三种浏览器对编解码格式的支持:
浏览器 | VP8 | H.264 |
---|---|---|
Chrome 60+ | 支持发送和接收 | 部分设备支持发送和接收 |
微信公众号/微信浏览器 7+ | 支持发送和接收 | 部分设备支持发送和接收 |
内嵌 WebView 的应用 | 部分设备支持发送和接收 | 部分设备支持发送和接收 |
Last updated