商用RTC vs 基于开源WebRTC自研 开发者该如何选择?

疫情催发RTC由较窄赛道进入较宽赛道,由一种技术能力逐渐演进为一种标准,甚至是互联网的基础设施,成为与5G、AI等新兴技术并列被提及的高频热词。业界普遍认为,后疫情风暴中的RTC在各场景应用中发挥了重要作用。

因为,RTC不仅推动了现有场景的加速落地,同时也在与AR、VR、MR等新设备新能力相结合,赋能更多创新场景。对于开发者来说,该如何选择RTC,面临的首要问题就是:第三方商用RTC还是基于开源WebRTC自研?本文将提供几个思考维度,帮开发者理清思路。

思考一:商用RTC厂商推动RTC技术发展演进

RTC的发展从技术上看,是与时代相结合的。RTC的早期应用主要是视频会议,使用者往往拥有专有的硬件设备,在专有网络上进行。进入商业4G时代后,互联网场景里,PC和手机这类的设备是不可控的,而网络更是一个非稳态环境。因此,之前基于设备和专有网络保障的RTC技术,在广域互联网时代里进行了非常大的演进。比如,在软件层面需要重新构建3A算法,包括视频采集、编解码的新算法;在全球通信网络架构层面,要合理利用边缘计算节点,更好地进行最后一公里的连接等。

RTC技术在适应时代发展变化,意味着它不是简单的书本上的知识,而是经历着大量的实践,开发中还要踩过无数的坑。每一项RTC技术上的革新与进步,都承载着研发人员适应网络变化、满足不同场景需求的经验累积。这些是商用RTC厂商在推动RTC技术发展过程中,逐渐被开发者所认可的最大原因。

思考二:质量为先?还是价格为先?

目前,市场上同时存在商用第三方RTC厂商和以开源WebRTC为基础的自研方。对于开发者来说,虽然商用RTC推动着RTC技术整体向前发展,但是也存在成本高居不下的问题。

对于初创企业或有一定学习能力的开发者来说,往往入坑选择了开源WebRTC,成为自研方。开源WebRTC有非常明显的优势和劣势,享受它的优点,就要接受它的缺点。它的优点毋庸置疑是短期内成本低,甚至0成本就可以上手。但从长期看,随着业务量的增长,和对实时音视频高清晰、低延时、无卡顿的要求越来越高,开源WebRTC往往难以满足。

当这种情况出现时,就需要由开源WebRTC向第三方RTC厂商迁移替换。这样一来,对开发者来说,需要重新熟悉第三方RTC厂商数百个SDK接口或场景Demo,如果业务正处于运营上升期,还存在迁移过程中,数据存储丢失,无法确保业务连续性的风险。

因此,“以质量为先?还是以价格为先”,在笔者看来是个伪命题。以价格为先,选择了开源WebRTC的自研者最终还是要转向第三方RTC厂商。如果开发者想运营一款未来爆款的App,最好的选择一定是使用商用第三方RTC厂商。一线阵营的RTC厂商,都拥有数百人专业的研发团队,技术稳定成熟;有的厂商还自研自建全球通信网络,部署多地数据中心和数百个边缘节点,确保底层基础架构健硕。

目前,市场上处于一线阵营的RTC厂商,有专注于通信云赛道的声网、即构、融云等PaaS云厂商,还有互联网大厂阿里云、腾讯云、网易云信等。

思考三:结合场景化Demo和最佳实践,选择第三方RTC厂商

RTC技术在互联网的应用场景非常广泛,比如,支持一对一音视频通话的1V1 教学场景、在线看房中的 VR 看房场景、1V1 社交中的陪聊场景;支持一对多音视频通话的语聊房、在线KTV、游戏直播、互动小班课;支持多对多音视频通话的远程医疗会诊和手术示教、多人相亲等。

基本上一线阵营的RTC厂商都可以支持上述的在线教育、泛娱乐社交、远程医疗等广泛场景。这时,开发者应多考虑自身项目的应用场景,选择可以提供场景化Demo的厂商,这样便于快速上手,不用在数百个SDK中自己筛选适合场景的开发模块,可以节省不少开发时间。除了场景化Demo以外,如果选择有该场景最佳实践的厂商,往往也会帮开发者少走弯路。

目前,小编了解到,融云的通信云能力可以为在线KTV、语聊房、多人相亲、电商直播、远程会诊、手术示教以及在线教育等数百种应用场景赋能。比如,融云为某客户提供的底层IM和实时音视频能力,通过深入了解在线教育场景,帮助其实现了在线教育App的低延时直播,无论是大班课、小班课,还是一对一VIP课,可灵活控制直播间内的参与者,实现讲师与学生的互动,不仅支持高品质音视频,同时还支持白板、录播回看等功能。这样的一线实力RTC厂商,往往可以成为开发者在不同场景下优先考虑的厂商。

结语

后疫情风暴中的RTC从一个隐形事物,逐渐成为开发者关心的热门领域。从某技术网站数据看,RTC相关的文章及视频发布已经超过了30万篇,带来的阅读和观看量已经超过了30亿,对于RTC感兴趣的单一视频访问量甚至超过了70万。

所以,本文希望给正在学习RTC技术的,或正在选择RTC能力的开发者,以启发和借鉴。小编始终认为,商用第三方RTC是开发者更可靠、更稳定和更长远的选择。在选择时,要考虑一线实力RTC厂商有无场景化Demo,有无该场景的最佳实践,这样才能少走弯路多避坑。

上一篇:你会在你的WebRTC 应用程序中使用哪种视频编解码器呢?


下一篇:Janus 的搭建与 WebRTC 使用