本文译自: http://www.nojitter.com/post/240172714/webrtc-video-conferencing-in-what-browser-take-vi
本文中我们将一起分析各浏览器对 WebRTC 支持的情况。下图是我 WebRTC 设备清单中的一部分,我们就以这张图作为切入点。
下面我们来一个浏览器一个浏览器的分析。
Chrome 还是整个队伍的领军人物。有些人抱怨 Google 不按照规范运行 WebRTC,可是话又说回来了,该遵循哪个规范呢?我们还是处在草案阶段,每个人都在为 WebRTC 规范做努力,但是现在还没有一个明确的规范。
我想表达的一个观点是:如果你的浏览器有超过十亿的下载量,那么你所改动的每一行代码都会造成某些功能发生错误。这意味要是想改变整个 API 以及 WebRTC 的表现层要难上加难。要花费大量的时间。
Mozilla 通过自家的 Firefox 浏览器加入 WebRTC 阵营的时间可以说跟 Google Chrome 一样长。实际情况是,所有的功能也只是止步于可以工作这个层次。读者可以注意一下 Mozilla WebRTC 高级博客上面关于质量的内容。
Microsoft Edge 浏览器支持 WebRTC 1.0,无论这里 1.0 指的是什么。它还支持 ORTC。但是主要是 ORTC,WebRTC 的优先程度排在它后面。
我还是很费解微软这么做的理由是什么,我相信我不是唯一一个想不明白的人。
对于大部分的性能,微软只是在努力达到并保持与 Chrome 相同的表现。Edge 浏览器的份额比较低,所以这是个聪明的做法—有公司开始在他们的产品中支持 Edge 浏览器,也有可能只是因为 Edge 版本的开发成本并不高。
苹果刚刚加入 WebRTC 阵营中,宣布 iOS 11 和 Safari 11 中支持 WebRTC。
但是苹果并不是全部支持,DataChannel 现在并不能使用,视频编解码是 H.264 ,而不是 VP8。而且这点可能不会发生改变。
总的来说,WebRTC 现在已经覆盖所有的现代浏览器了。
在这里,WebRTC 碰壁了。
是的,我们可以用微软的 Edge 浏览器,但是这款浏览器只能在 Windows 10 上使用。不过人们好像还是很乐意换用 Chrome 浏览器的。
当然如果能让 IE 也加入 WebRTC 大家庭是再好不过的事,但是可能永远不会发生。想要进行实时通信,我们可以使用插件或者独立的 PC 应用。
当 WebRTC 不能用或者不能够满足需求时,你总是可以在封闭的应用中使用 WebRTC 技术。
对于 iOS 和 Android 来说,你可以下载 WebRTC 源代码,然后在它的上面编写自己的应用,或者使用 WebView 这样的操作系统。
对于电脑端来说,最通常的做法是使用 Electron,一个围绕 Chromium 搭建的开源应用容器。它可以让你的网页应用编程一个电脑应用,并且可以跨 Windows,Mac,和 Linux 系统使用。而且不管你用的是 IE 或者其他任何浏览器都可以,没有问题。
说说你自己实际应用 WebRTC 的情况吧。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.