【51CTO.com快译】WebRTC 可为浏览器、移动应用程序和桌面应用程序提供实时通信功能,通常用于视频通话。2009年,Google提出创建WebRTC的想法,以替代无法在浏览器中运行的Adobe Flash和桌面应用程序。
上一代基于浏览器的产品是建立在许可的专有技术之上的,各种产品都是用这种技术制作的,包括Hangouts。谷歌随后收购了向其提供技术许可的公司,并将其作为开源WebRTC项目提供。这个代码库集成在Chrome中,并被大多数使用WebRTC的应用程序使用。与其他浏览器供应商和行业领袖(如Mozilla、微软、思科和爱立信)一起,WebRTC的标准化在W3C和IETF中被启动。
2013年,Mozilla和谷歌展示了各自浏览器之间的视频通话。随着标准的不断演进,不同浏览器的实现差异与兼容性等挑战,最终得到了解决。
现在,WebRTC规范附带了一整套平台测试和工具来解决兼容性问题,各个浏览器也相应地调整了它们的实现方式。结束了Web开发人员必须不断将他们的服务适配不同的浏览器的艰难时期。
架构和功能
WebRTC规范的核心部分是RTCPeerConnection API。RTCPeerConnection使用点对点协通信协议,处理连接不同端上的两个应用程序。PeerConnection API与getUserMedia和getDisplayMedia密切交互,用于访问摄像头和麦克风,以及捕捉屏幕内容。WebRTC允许通过 DataChannel 发送和接收包含音频和视频内容以及任意二进制数据的流。
用于处理、编码和解码音频和视频的媒体功能是WebRTC实现的核心。WebRTC支持各种音频编解码器,Opus是最常用和通用的。WebRTC实现需要同时支持谷歌的免费使用VP8视频编解码器和H.264来处理视频,并且通过DTLS和SRTP协议保证连接加密。
低延迟,应用广
WebRTC广泛应用于时间要求严格的应用,如远程手术、系统监控、自动驾驶汽车的远程控制,以及在不可能缓存的UDP上构建的语音或视频通话。谷歌、Facebook、思科、RingCentral和Jitsi等公司几乎所有基于浏览器的视频通话服务都使用WebRTC。现在谷歌Stadia和NVIDIA Geforce 使用WebRTC将游戏流从云服务器传送到Web浏览器没有可感知的延迟。
在过去的一年里,由于浏览器内部视频通话需求的增加,WebRTC在Chrome上的使用率增加了100倍。
WebRTC未来可期
尽管WebRTC现在已经成为W3C标准,但仍在继续改进。新的视频编解码器AV1可以节省高达50%的带宽,现在可以在WebRTC和网络浏览器中使用。开放源代码库的持续改进有望进一步减少延迟,并提高流媒体视频的质量。
WebRTC NV主动创建补充API以支持新的用例。包括对现有API的扩展,以提供对现有功能的更多控制,如可扩展的视频编码。这也为Web开发人员提供了更大的灵活性,可以通过集成高性能的定制WebAssembly组件进行创新。随着5G网络的兴起和对更多互动服务的需求,我们期待看到基于WebRTC的服务建设继续增加。
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】
文章版权声明
1 原创文章作者:kbx991炒币,如若转载,请注明出处: https://www.52hwl.com/33556.html
2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈
3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)
4 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别