【问题标题】:Is there any alternative approach to implement WebRTC SFU, to have only 1 upload stream?是否有任何替代方法来实现 WebRTC SFU,只有 1 个上传流?
【发布时间】:2021-01-22 15:32:45
【问题描述】:

我有一个服务器,它能够将 WebRTC 媒体数据从 A 中继到 B。对于视频会议,如果我们采用 P2P 方法,那么就会创建一个网状网络。当 P2P 不工作时,我们可以有这个中继服务器。

主要问题是在mesh网络中,对于N个参与者,上传链接的数量是“N - 1”。因此连接数上升到 N * (N-1)。通常mesh网络允许5-6个稳定连接。

许多在线资源建议实施 SFU。如果 SFU 解密媒体数据,然后为每个对等方重新加密,那么这实际上需要服务器端的 WebRTC 组件。 是否有任何基于 C/C++ 的轻量级库在这方面有所帮助?

有更好的替代策略吗?

顺便说一句,我试图用他们自己的答案与所有​​同行分享相同的提议,但正如预期的那样,它没有奏效。对等方在收到少量数据块后断开连接。


我参考了以下相关帖子:

【问题讨论】:

    标签: c++ webrtc p2p video-conferencing mesh-network


    【解决方案1】:

    有相当多的免费和开源项目实现了 SFU:

    • Jitsi 可能是最著名的,但它是用 Java 编写的,因此可能不适合某些部署;
    • Janus 是用 C 编写的;它体积小、效率高且支持良好,但可能不是最容易理解的;
    • Ion-SFUGalène 是用 Go 编写的,可能更容易适应您的需求。

    【讨论】:

    • Janus 正式支持 Linux。您是否知道任何基于 C++ 的跨平台库或子集,它们可以生成提供/回答 SDP,然后对流进行编码/解码。与 Chrome 浏览器的功能相当。即使是 Chrome 的最小 WebRTC 子集也可以。但不确定,如何设置。
    • @jch 你觉得 mediasoup 怎么样?
    • 我不擅长阅读node.js代码,所以也没多看。对不起。
    猜你喜欢
    • 2017-07-16
    • 2021-02-03
    • 2021-10-19
    • 2012-06-05
    • 2011-04-21
    • 1970-01-01
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多