来源
:Kranky Geek WebRTC 2022

内容整理
:彭峰

Kranky Geek 是一个关于如何使用 WebRTC 构建实时通信应用的免费开发者大会,成立七年以来,该大会致力于帮助开发者将实时音视频纳入应用。本文介绍 Kranky Geek WebRTC 2022 秋季大会的 1-2 节(共 10 节)内容。
目录
  • WebRTC 发展趋势
  • WebRTC 开源状态
    • WebRTC 的开源意义何在?
    • 相关的开源工作能更进一步吗?
    • 开发者社区发生了些什么变化?
    • 项目介绍

WebRTC 发展趋势

WebRTC(Web实时通信)是一种允许通过网络浏览器进行实时通信,且无需额外软件或插件的技术。Chad Hart 是一名从事实时通信技术、产品管理和上市战略的顾问和分析师,通过对 GitHub 数据的分析,与 WebRTC 直接或者间接相关的代码提交的开发者数量变化趋势如图 1 所示,其峰值正好对应新型冠状病毒的爆发,在该段时间内,增长速度是惊人的。尽管之后相关的用户逐步减少,但是如图 2 所示,相关的代码提交或者 issue 数据却并没有下降的趋势。这表明 WebRTC 的相关技术一直在发展。
图 1 WebRTC 开发者数量的变化趋势
图 2 WebRTC 相关提交数量的变化趋势
本次大会将会介绍 WebRTC 技术发展的前沿,其中主要包括一下几个方面:
  • 关于 WebRTC 开源状态:JANVS、mediasoup、jitsi.org 和 PION 等公司将介绍相关的发展和成果;
  • 提高用户体验:spearline 公司将就如何诊断系统故障提高用户体验进行讨论和分享;
  • 人工智能在 WebRTC 中的应用:krisp 和 google Meet 将展示相关的应用;
  • 新的架构:daily 公司将介绍 WebRTC 结合云业务的相关发展,webrtcHacks 展示在语音编码器方面的成果;
  • WebRTC 新的应用:Dolby.io 公式介绍利用 WebRTC 进行广播的案例,而 Nvidia 展示 WebRTC 在游戏方面的用户体验提升。

WebRTC 开源状态

在本节分享中,来自 mediasoup 的 José Luis Millán、Janus 的 Lorenzo Miniero、Jitsi 的 Saúl Ibarra Corretgé 以及 Pion 的 Sean DuBois 分别就以下四个方面展开讨论:
  • WebRTC 的开源意义何在?
  • 相关的开源工作能更进一步吗?
  • 开发者社区发生了些什么变化?
  • 讨论者的项目介绍。
图 3 四位讨论者与主持人

WebRTC 的开源意义何在?

如果想要构建一个基于 WebRTC 的视频服务,那么如何在自建系统、基于开源实现和利用服务商提供的 API 三者之间选择是一个值得商榷的问题。四位讨论者表达了相似的观点,即尽管自建系统可以实现开发者对视频服务产品的控制程度尽可能高,但其成本巨大;而如果使用服务商提供的 API 例如 Zoom 的 PaaS(平台即服务)虽然可以快速帮助开发者将业务开展起来,且对开发者相关技术的要求最低,因为可以使用提供的 API,但是这种方式不好之处在于如果业务增长到一定规模,所需要的运营成本的增加相比另外两种方式来说是昂贵的,并且开发者在开发新的产品特性时会受限于现有的 API,从而整个产品可能在激烈的市场竞争中因此败下阵。因此,在开源 WebRTC 的基础上构建自己的产品成为一个相对理想的选择,这也就是其开源的意义所在,尽管相比依赖 PaaS 开展业务来说,这种模式的启动成本比较高,对技术人员的要求也更严格,但随着业务的展开,其优势是大于劣势的。当然,任何的选择都要基于视频服务具体的需求考虑。

相关的开源工作能更进一步吗?

谷歌花费数百万美元购买了 WebRTC 相关的专利,然后将其开源,并推动相关标准的制定,尽管其可能出于其商业上的考虑,但是这些工作仍然是值得赞扬的。多数讨论者都对目前 WebRTC 开源方面所取得的成就感到满意,也表达在实际工程中,相关的开源能够支持开发者完成既定的目标。但一些开发者希望能够对 sdp 部分进行改善并且简化 API。

开发者社区发生了些什么变化?

WebRTC 的开发者社区一直在发展,可供学习的资源也一直在增长,可以确定的是,新冠病毒的爆发加速了这一发展过程,在过去一段时间内,相关社区的用户活跃程度提升,并且相关项目的关注度也在提高,越来越多的年轻开发者开始贡献自己的聪明才智,例如实现不同编程语言版本的 WebRTC 以及为项目提出了很多的意见和解决方案,极大促进了开源工作的进展。

项目介绍

来自 Jitsi 的 Saúl Ibarra Corretgé 介绍了自己公司的超大型在线会议项目,目前能够实现 1 万人同时参会,在会议中,这些参加者并不只是作为一个接收者。mediasoup 公司的 José Luis Millán 所负责的主要工作是运行效率的提升,例如对内存占用的优化和通信格式的转化。Janus 公司的 Lorenzo Miniero 焦距于提升实时视频服务系统中的可扩展性。来自 Pion 公司的 Sean DuBois 主要研究在 WebRTC 中的拥塞控制。
附上演讲视频:
第一节:
第二节:

继续阅读
阅读原文