国外小哥总结的11个WebRTC协议栈(不同语言的协议栈)

在搜索有关HTTP/3WebTransport的信息时,我遇到了SIPSorcery WebRTC Echoes项目,这是一组针对 WebRTC 协议栈的互操作性测试。

从该网站上,我发现存在其他几个 WebRTC 协议栈。对我来说, libWebRTC 是 WebRTC 兼容客户端的实际标准实现。在我看来,拥有可在多个平台(桌面、移动等)上运行的 WebRTC 解决方案等同于共享相同的多平台 WebRTC 库。这就是libWebRTC从一开始就提供的强大之处。

但年复一年,对于原生 WebRTC 开发人员来说,编译和构建libWebRTC以及对所有平台的差异进行清晰的更改日志仍然是一项痛苦的任务:如何确保使用 libWebRTC X 版编译的应用程序仍然与浏览器兼容Y版?唯一正确的答案是测试……

所有这些要点(以及我遗漏的那些)都有助于伴随一些人创建替代 WebRTC 协议栈的意愿:改变现状并为更适合开发人员需求但保持兼容性的不同语言提出堆栈。

本文是针对本机开发的不同现有 WebRTC 客户端协议栈的导览。

现有的 WebRTC 协议栈

协议栈人气贡献者主要用例链接
libWebRTCGoogle + ext主要是客户端
Desktop Native
Mobile native
Google
Documentation
Group
Pion9,8k156基于客户端和服务器
Go 的应用程序
GitHub
Documentation
Slack
aiortc3k23 (1 active)主要是客户端
基于 Rust 或 C++ 的应用程序
GitHub
Website
Discussions
webRTC.rs2,1k50Mainly client side
Rust or C++ based application
GitHub
Website
Discussions
SipSorcery0.8k64客户端和服务器
C#,基于 .Net 的应用程序
GitHub
Website
Discussions
LibDataChannel0.8k33客户端和服务器(节点数据通道)
C++/Rust/NodeJS数据通道或媒体传输
GitHub
Website
Discussions
Werift0.2k4服务器端
Node.JS
GitHub
Website
Discussions
libWebRTC 集成
React Native WebRTC4k94移动开发
React-Native
GitHub
Website
Discourse
Flutter-WebRTC3.2k76移动开发
Flutter
GitHub
Website
SlackDiscussions
WinRTC0,3Microsoft + ext主要是客户端
C#,基于 .Net 的应用程序
GitHub
Documentation
For testing purpose
RawRTC0.3k6主要是服务器端
C/C++
GitHub

注意:由于它们在WebRTC Echoes中列出,它们应该是可互操作的,这意味着例如使用 libWebRTC 的客户端应该能够向使用 Pion 的客户端发起视频呼叫。

Webrtc StackslibWebRTC
WebRTC 协议栈

作者:Olivier Anguenot 阿尔卡特朗讯企业技术负责人。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(1)

相关推荐

发表回复

登录后才能评论