Safari WebRTC with easyrtc

时间:2017-07-26 04:47:38

标签: safari webrtc easyrtc

在Chrome上,我正在使用完整的网络摄像头和麦克风支持easyrtc.js两种方式,但Safari不想合作。

最新版本的Safari列为WebRTC兼容(https://webkit.org/blog/7627/safari-technology-preview-32/)。此外,我可以在“开发”菜单下选择“启用旧版WebRTC API”。

如果未启用Legacy WebRTC API,我会收到来自easyrtc Your browser doesn't appear to support WebRTC.的错误消息启用后,我从easyrtc.js Unhandled Promise Rejection: TypeError: Type error函数中收到错误消息this.createObjectURLwindow.URL.createObjectURL(mediaStream)

如何让Safari的行为与Chrome版本相同?

2 个答案:

答案 0 :(得分:1)

面对与easyrtc相同的问题,然后在开发中使用了easyrtc的beta分支,它的工作原理。以前,正在使用master分支。

beta分支包含playsinline用于safari。

使用以下方法克隆beta分支:

git clone -b <branchName> <repository>
装置

git clone -b beta https://github.com/priologic/easyrtc.git

答案 1 :(得分:0)

免责声明:我对easyrtc.js

一无所知

看起来easyrtc依赖于旧版本的WebRTC API来检测WebRTC兼容性,这就解释了为什么Legacy选项会让您更进一步了解。

就承诺错误而言:this.createObjectURL已被弃用了相当长一段时间,赞成srcObject分配。

  

如何让Safari的行为与Chrome版本相同?

你可能不会让他们表现得一样。 但是我建议您结帐adapter并将其包含在您的项目中。这个项目试图消除浏览器供应商之间的这些API差异,直到API稳定下来。