WebRTC 通过 node.js 服务器进行一对多流式传输?

WebRTC stream one to many through node.js server?

我正在做一个需要通过 WebRTC 发送音频信号的学校项目。服务器本身是一个 RaspberryPi 3(ARM 芯片),系统应该可以在没有互联网的情况下工作,只有 intranet。我们有连接到服务器的设备,需要将音频信号从某些设备投射到所有其他设备。

Peer to server to peer schema ( ^.^)♪
                                         / -->  WebRTC Client 1
 WebRTC Capture ---\       The       / -->  WebRTC Client 2
 WebRTC Capture ----    Raspberry    --->  WebRTC Client ...
 WebRTC Capture ---/   Pi 3 Server   \ -->  WebRTC Client 20
                                         \ -->  WebRTC Client 21

我找到了 node-webrtc,但文档很少,无法正常工作...而且音频通道的性能似乎很糟糕...您做过类似的东西吗?替代方案似乎是使用 DataChannel 而不是 MediaStream,后者似乎没有得到很好的支持。但是会有断断续续的音频问题,因为它会分块发送,不是吗?

你会如何实施?如果可能的话,我想坚持 node.js。

您正在寻找的是支持 WebRTC 的媒体服务器。

经过一番谷歌搜索,我发现有一个由 medooze 为 node.js 编写的并且支持 RPi,但我之前没有测试过。

https://github.com/medooze/media-server-node

看起来有一些示例和文档。

其他广泛使用的媒体服务器: