在迭代不休的技术苍穹之中,要论 2019 年最火热的技术,那么非 5G 莫属。5G 的到来,不仅强化了 4G 网络的稳定性、高频传输技术,还为移动互联网时代主流的短视频、直播、云游戏等娱乐行业带来更多的可能性。

而作为这些新兴行业的支撑,不得不提及实时通信技术。对于诸多业界开发者而言,对实时通信其实也并不陌生,毕竟从腾讯 QQ 音视频,到风靡国内的狼人杀、大吉大利的吃鸡游戏、线上抓娃娃、直播答题、线上 KTV,再到如今的微信小程序音视频等,其背后都离不开实时音视频的解决方案,更离不开 WebRTC 技术的支持。

对此,我们不禁产生疑问,WebRTC 究竟有何技术优势可以征服各种应用程序?当前 WebRTC 的发展又处于一个什么样的阶段?它是否有可能在未来实现浏览器、移动端的全面覆盖?基于此,我们在今年由声网 Agora 主办的 AllThingsRTC 实时互联网会议期间,采访了微软首席架构师 Bernard Aboba,探讨 WebRTC 的前生今世以及在微软新版 Edge 中 WebRTC 的应用现状与下一步计划。

微软首席架构师兼 W3C WebRTC 工作组联合主席 Bernard Aboba

注:由声网 Agora 主办的 AllThingsRTC 实时互联网会议已于 6  月 17 日在美国旧金山市中心 Parc 55 酒店落幕。作为全球首屈一指的实时音视频技术盛会,此次会议汇集来自谷歌和微软等财富 100 强科技公司的专家以及新兴创业公司的企业家,以及游戏社交直播 、AR/VR 等前沿技术和领域的一线技术专家。

WebRTC 的前世

无论是在 PC 互联网时代、移动互联网时代,还是当下以云计算、人工智能、IoT 为主导的万物互联时代,WebRTC 的到来都是实时互联网技术标准演进过程中至关重要的一个节点。

回忆 Web 的早期发展,设备和 Web 服务器之间的通信非常有限。在访问网站时,只有当用户在地址栏中输入新地址或点击超链接时,浏览器才能与存储网站的网络服务器进行通信。而这就是静态网页需要运行的全部内容。

但是彼时的一些开发者意识到 Web 应该能以更具吸引力的方式实践应用。正因此,为了使各大网站更具动态性和响应性,诸如 Ajax 类似的框架最终在 90 年代后期被相继开发,从而浏览器也能够实时地与 Web 服务器通信、允许创建适当的 Web 应用程序或即时响应用户操作。不过,彼时的实时通信技术在 Web 浏览器和服务器之间仍存在很大的局限性。

具体而言,过去,两个不同用户的 Web 浏览器之间的通信速度很慢,因为其二者之间的所有流量都必须通过中间的服务器,这产生了明显的延迟。但是,我们也发现直接收发消息之类的延迟并不算是真正的问题。这是因为发送消息的一个用户和接收消息的另一个用户之间几秒钟的差异并没有真正影响到整体的传输效果。但是,服务器延迟导致了一系列的连接延迟,不过如果没有这种延迟则无法实现用户之间互相呼叫等实时视频的服务。

如今 WebRTC 的出现,可以完全实现桌面和基于移动的多人多媒体聊天应用程序。

WebRTC 的今生

那具体而言,到底何为 WebRTC?

WebRTC(Web Real-Time Communication,网页即时通信),是一个支持网页浏览器进行实时语音对话或视频对话的技术。它的起源,要从 2010 年 Google 以 6820 万美元收购 VoIP 软件开发商 Global IP Solutions 的 GIPS 引擎谈起,在经过收购之后没多久,Google 将该引擎改名为“WebRTC”,并宣布向开发者们开源了源代码。

2012 年,Google 将 WebRTC 集成到 Chrome 浏览器中。随后,在它的带动下,Mozilla、Opera、Ericsson 等 PC 浏览器以及手机浏览器均开始支持 WebRTC 技术。

2017 年,苹果在 WWDC17 上正式宣布其浏览器内核 WebKit 也正式支持 WebRTC。

如今,继去年微软宣布 Edge 将采用 Chromium 开源项目之后,就 WebRTC 技术应用而言,Bernard Aboba 表示,“基于 Chromium 的新版 Edge 现在可在预览版中使用。新版本的 Edge 提供了 WebRTC 开发者常用的许多功能,如支持数据通道、RTCPeerConnection 中的 Strem、VP9 编解码器和 MediaStream Recording。”

事实上,除了以上的浏览器以及文章伊始提及国内主流的应用程序之外,在 Discord、Google Hangouts 和 Facebook Messenger 等一些国内的多媒体网络应用中,也都需要 WebRTC 才能实现。

WebRTC 一统浏览器、移动端的实时音视频天下?

按照这样的发展趋势,WebRTC 能否一举成功夺下各层面的实时音频霸主之位?

其实,在 WebRTC 的全名——Web Real Time Communication 中,我们从 Web 一词就可以看出,最初这项技术是为浏览器量身打造用以实时音视频能力而准备的。而 WebRTC 项目一开始的初衷也是让 Web 开发者能够基于如 Chrome、Edge、Firefox 等浏览器平台轻易快捷开发出丰富的实时多媒体应用,而无需下载安装任何插件,Web 开发者也仅需关注多媒体的数字信号处理过程,只需编写简单的 JavaScript 程序即可实现。

不过,就浏览器应用而言,WebRTC 的发展还面临着诸多的挑战。对此,Bernard Aboba 表示:

  • 浏览器面临的主要挑战是完成 WebRTC 1.0 API 的实现,以及消除实现差异。为了达到提议标准,WebRTC 工作组需要记录每个功能的两个实现,并通过 Web 平台测试(WPT)的结果展示互操作性。当下,W3C 在实现这一目标方面一直在稳步前进,但在 WebRTC 以及 WebRTC-Stats 等相关规范方面仍有许多工作要做。

  • 其次,就 WebRTC 自身的发展而言,WebRTC API 在其历史中经历了三次主要迭代,最后一次迭代是 addTransceiver API,这是 WebRTC 1.0 候选推荐中的首选 API。随着浏览器现在实施候选推荐标准并融合“Unified Plan”SDP,WebRTC 工作组正在为开发人员一直要求的互操作性方面而努力,并且 W3C 需要将规范推进到推荐的标准中。就需要改进的领域而言,W3C 仍然需要改进同步广播等高级功能的测试覆盖率,并将 WebRTC-Statistics 规范纳入候选推荐标准中。

  • 当前实时音视频通信领域,也并不只有 WebRTC 一种可供选择的技术。事实上,在 WebRTC 诞生之前,很多领域的公司都有自己自研的通信协议。而如何保证自研协议与 WebRTC 协议在 Windows、Mac 等平台上做到互通?Bernard Aboba 建议道,专有的自研协议和 WebRTC 的互操作性通常使用网关实现。使用 Janus 等工具,开发人员可以通过在已建立的框架内构建模块。但是,在各种情况下测试兼容性的任务仍然很困难。对此,Bernard Aboba 也表示,由 Cosmo Consulting 开发的测试框架(如 KITE)可能会有所帮助。

然而,除此之外,WebRTC 在移动端的应用也一直被开发者所诟病。针对这一点,Bernard Aboba 坦言道,“对移动或嵌入式设备优化 WebRTC,是一项重大的挑战,尤其是在内存、应用程序大小,以及连接性和功耗等方面。”

不过当下,W3C 组织为了解决这些难题,该团队的开发者们经常需要创建自定义构建,其中包含了许多更改改进,举例说明,例如,Ortc Lib 创建了 OpenPeer Foundation 的 Robin Raymond,支持使用 ORTC API 在移动设备上进行开发,同时允许开发人员自定义库,以便仅包含所需的功能。 事实证明这种方法非常成功。

牛了,这几个案例让你迅速掌握AI技术!

https://edu.csdn.net/topic/ai30?utm_source=csdn_bw

 热 文 推 荐 

小米崔宝秋:小米 AIoT 深度拥抱开源

为什么 C 语言仍然占据统治地位?

苹果应用审核团队:每人日审百款 App!

华为在美研发机构 Futurewei 意欲分家?

☞老司机教你如何写出没人敢维护的代码!

☞Python有哪些技术上的优点?比其他语言好在哪儿?

☞上不了北大“图灵”、清华“姚班”,AI专业还能去哪上?

☞公链史记 | 从鸿蒙初辟到万物生长的十年激荡

☞边缘计算容器化是否有必要?

☞马云曾经偶像,终于把阿里留下的1400亿败光了!

点击阅读原文,输入关键词,搜索CSDN文章。

你点的每个“在看”,我都认真当成了喜欢

WebRTC 将一统实时音视频天下?相关推荐

  1. 视频教程-Android WebRTC 实现1V1实时音视频通信-Android

    Android WebRTC 实现1V1实时音视频通信 从2012年开始从事移动互联网方面的开发工作,曾担任去哪儿网开发工程师,搜狗高级开发工程师,拥有多年一线实战开发经验. 擅长语言:Object- ...

  2. 如何使用Intel CS for WebRTC 快速搭建实时音视频通讯系统

    如何使用Intel CS for WebRTC 快速搭建实时音视频通讯系统 Intel CS for WebRTC是一套完整的WebRTC的通讯架构套件,包括了服务端软件和客户端SDK,其中客户端SD ...

  3. 即时通讯开发之网页端实时音视频技术WebRTC

    WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音通话或视频聊天的技术,是谷歌2010年以6820万美元收购Globa ...

  4. 从0到1 构建实时音视频引擎

    最近几年,实时音视频领域越来越热,今年的疫情更是"火上浇油"了一把.网易智企旗下产品网易云信在实时音视频领域深耕多年,积累了不少实践经验.在本文里,笔者将以烹饪为比喻,深入浅出地将 ...

  5. rtc/webrtc 2017实时音视频大会分享

    Share of RTC2017 Walker.Xu RTC2017 RTC实时互联网大会在美国已成功举办8届,是全球范围影响最大最权威的实时通信行业技术会议.该会议吸引了来自全球数万名开发者和技术大 ...

  6. 实时音视频技术(WebRTC/voip/Linphone/P2P)

    实时音视频技术(WebRTC/voip/Linphone/P2P) 视频社交与语音社交???    实时视频(直播)/语音通信.多媒体技术团队在音视频编解码.前后处理.传输等技术:   在语音社交.视 ...

  7. 七牛云 RTN:基于 WebRTC 零基础搭建实时音视频平台

    近年来,在线教育.狼人杀.在线抓娃娃.线上 KTV 等多人视频互动模式不断涌现,实时音视频通信风头正劲,实时音视频技术 WebRTC 也因此受到了广泛关注.相关数据显示,2017-2021 年期间,全 ...

  8. 新增微信小程序和WebRTC连麦直播等多项能力,即构实时音视频SDK再升级!

    经过2018年小半年的闭关练功,即构ZEGO团队铸造了不少黑科技.本文将为你带来即构ZEGO实时语音视频SDK近半年新增能力和功能优化的最新进展. 更懂应用场景的语音视频云 作为全球领先的实时语音视频 ...

  9. 新增微信小程序、WebRTC连麦直播多项能力,即构实时音视频SDK再升级

    经过2018年小半年的闭关练功,即构ZEGO团队铸造了不少黑科技.本文将为你带来即构ZEGO实时语音视频SDK近半年新增能力和功能优化的最新进展. 更懂应用场景的语音视频云 作为全球领先的实时语音视频 ...

最新文章

  1. thinkPHP5.0 URL路由优化
  2. Ubuntu在命令行下不能够切换字母的大小写,只能输入大写字母
  3. 常考数据结构与算法: NC19 连续子数组的最大和
  4. 购物商城Web开发第一天
  5. VS2010删除所有断点时不弹出提示窗口
  6. LeetCode MySQL 1132. 报告的记录 II
  7. 笨办法学 Python · 续 练习 31:正则表达式
  8. layui单选框verify_layui 单选框选中事件
  9. UE4删除C++Classes下的类
  10. 新浪微博api的使用
  11. 全国计算机等级考试怎么卸载,教你三种方法卸载Windows7SP1Beta
  12. word文档如何画线条流程图_如何在WORD中画流程图
  13. 容器镜像仓库Harbor安装部署及简单使用
  14. 纵横网络靶场社区 工控
  15. 【Java】23 函数式编程
  16. dns114.114.114..114
  17. 为什么你需要一台NAS(网盘云盘vs路由器硬盘vsNAS)
  18. 某项目性能测试断流问题排查
  19. JS模块化的前世今生
  20. 03709马原第三章考点总结

热门文章

  1. vscode 运行python代码没有输出(Code runner)
  2. python爬微博粉丝最多的明星_2020明星微博粉丝排行榜,谁的粉丝数量最多呢
  3. yolov5安装pip install requirements.txt,pycocotools安装报错
  4. Effective Modern C++ 第二章 auto的使用
  5. 中国天然石墨行业市场供需与战略研究报告
  6. 2021年中国磁感应芯片市场趋势报告、技术动态创新及2027年市场预测
  7. 从入门到入土:恶意代码Lab03-03.exe|分析实验|运行截图|问题回答|
  8. 这些大佬告诉你,在先进计算与AI领域该往哪个方向冲!
  9. 微软成Eclipse基金会战略伙伴
  10. 技术突破寻找新思路,互联网内容的风控与风口