简体   繁体   中英

Live Audio Streaming over HTML5/NodeJS

I'm trying to make a website that will serve as a VoIP recorder app. It will take audio from the microphone, transmit the audio to the server and the server only, and then the server will handle the redistribution of audio to it's connected clients.

Here's what I've tried already:

  • WebRTC (from what I can tell, it's peer-to-peer only)
  • MediaRecorder - timeSlice to Socket.IO (only the first packet is playable due to header information)
  • MediaRecorder - Stopping every few milliseconds, transmitting the audio, and starting again. (is extremely choppy)

The stack I'm set on is NodeJS with Express, but I'm extremely open to any packages that will help.

As far as possibility, I know it is possible because Discord wrote in their own blog that they explicitly do not send packets peer-to-peer because they have large numbers of connected users.

Below is the way I imagine it being setup:

首选设置

Anyways, hope someone can help - I've been stuck on this for a while. Thanks!

WebRTC is NOT only P2P. You can put a WebRTC Peer on a server (and then have it do fan-out). This is what all major conferencing solutions do. SFU is a very popular deployment style, mesh isn't the only thing you can do.

You can go down the MediaRecorder path, but you are going to hit issues with congestion control/backpressure.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM