构建聊天应用程序、NodeJS 和 Express——我应该使用什么来进行媒体流传输?

Building a chat application, NodeJS and Express - what should I use for media streaming?

我之前使用 NodeJS(即带有客户端的中央聊天服务器,无 p2p)、Electron 或只是不错的旧版 Express 构建了聊天服务器。我想尽可能多地重用我的旧代码。因此,对我来说唯一缺少的难题是使用什么来启用 public 和私人 video/audio 流媒体。文件发送不是必需的。

有什么我可以 'easily' 加入这个模型的吗?我知道 Kurento 和一些类似的产品,但这些对于我希望的工作方式来说感觉有点过分了。

更新:给出一些关于 WebRTC 的建议,我对此持开放态度,但此应用程序的计划包括自动 moderation/content 过滤任何视频广播和文本.因此,我假设这样的解决方案需要以某种方式将服务器视为 'hardcoded' 对等方,以便可以相当安全地假设它会看到通过 public 聊天网络发送的任何内容的副本。当然,对于私人通信而言,情况并非如此。另一方面,最坏的情况下,在辐条拓扑中运行也没有问题。

您可以从 WebRTC 示例开始 https://webrtc.github.io/samples/

WebRTC 现在是 audio/video 通话的一种标准。这都是 p2p 工作,没有服务器交互。 您唯一需要构建的是连接 2 个用户的信令协议。为此,您可以 use/extend 您的 nodejs 应用聊天。