从另一个角度来看,WebRTC 只是一个媒体引擎,上面有一个 JavaScript API,所以每个人都知道如何使用它(尽管浏览器实现仍然各不相同)。
WebRTC,网页即时通讯(英语:Web Real-Time Communication),是直接在 Web 浏览器内驱动实时通信(语音、视频和任意数据)方法的API。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准,并于 2011 年标准化。谷歌开源的一款产品。
简单的说:WebRTC 是一种 HTML5规范,他无需在浏览器中安装任何插件可以在网页内进行实时通信工作的开源技术,它直接在浏览器和设备之间添加实时媒体通信。
到 2016 年,估计安装了 20 亿个可以与 WebRTC 一起工作的浏览器。从流量的角度来看,仅浏览器通信就估计每周传输超过 10 亿分钟和 500 TB 的数据。
下图是新冠期间,WebRTC使用情况:
WebRTC 如何工作
WebRTC 是一个媒体引擎,上面有一个 JavaScript API,所以每个人都知道如何使用它(尽管浏览器实现仍然各不相同)
(1)紫色部分是Web开发者API层;
(2)蓝色实线部分是面向浏览器厂商的API层
(3)蓝色虚线部分浏览器厂商可以自定义实现
传统的客户端和服务器通信:
应用WebRTC 技术的客户端和服务器通信:
以某种方式从一个浏览器向另一个浏览器发送信号,一旦建立联系,可以直接在两个浏览器之间向它们发送消息——而 Web 服务器永远不会接触这些消息。
这就是为什么许多人将 WebRTC 称为点对点技术。或简称 P2P。因为浏览器可以直接通信。
WebRTC服务架构
WebRTC 浏览器与终端兼容性
WebRTC 在所有现代浏览器中都可用。Google Chrome、Mozilla Firefox、Apple Safari 和 Microsoft Edge 都支持它。也可以将其集成到应用程序或嵌入式设备中,而完全不需要浏览器。
应用场景:媒体和访问:
目前,WebRTC 在视频通话中广受欢迎,但不限于视频语音功能。WebRTC 所做的是允许访问设备。您可以访问设备的麦克风、手机或笔记本电脑上的摄像头——或者它本身也可以是屏幕。您可以捕获用户的显示,然后远程共享或记录该屏幕。无论它做什么都是实时的,可以实现实时交互。WebRTC 不仅限于语音和视频。它允许发送任何类型的任意数据。
更多应用场景
1,统一通信——语音和视频通话、1:1 或小组会议、远程协助、直播;
2,远程操作——远程医疗、驾驶汽车、无人机、运输;
3,云游戏——在云中渲染游戏的视觉效果并将其实时发送给玩家
4,云主机 —— 操作远程机器(高性能机器或高度安全/配置的机器),就像它是本地机器一样
5,虚拟空间和虚拟世界——在 2D 或 3D 合成渲染的虚拟环境中与人们会面
应用举例:
peer5.com企业内容分发网络 ;
hopin.com虚拟活动平台;
stadia.com在服务器上玩游戏。
扩展阅读: