通过HTML5 / NodeJS进行实时音频流传输

时间:2020-05-20 23:50:29

标签: javascript html node.js webrtc

我正在尝试创建一个将用作VoIP记录器应用程序的网站。它将从麦克风中获取音频,仅将音频传输到服务器和服务器,然后服务器将处理音频向其连接的客户端的重新分配。

这是我已经尝试过的:

  • WebRTC(据我所知,它仅是对等的)
  • MediaRecorder-timeSlice到Socket.IO(由于头信息,只能播放第一个数据包)
  • MediaRecorder-每隔几毫秒停止一次,传输音频,然后重新开始。 (非常不稳定)

我设置的堆栈是带有Express的NodeJS,但是我非常欢迎任何有帮助的软件包。

据我所知,这是有可能的,因为Discord wrote in their own blog由于它们具有大量的已连接用户,因此它们没有明确发送对等数据包。

以下是我想象的设置方式:

Preferred Setup

无论如何,希望有人能提供帮助-我已经坚持了一段时间。谢谢!

1 个答案:

答案 0 :(得分:1)

WebRTC不仅是P2P。您可以将WebRTC对等体放在服务器上(然后将其扇出)。这是所有主要会议解决方案的功能。 SFU是一种非常流行的部署样式,网格并不是唯一可以做的事情。

您可以沿着MediaRecorder的路走,但是您将遇到拥塞控制/背压问题。