0
votes

I'm trying to stream a microphone/audio to multiple clients.

  • the broadcaster is a screenless raspberry, so I can't open a Webbrowser and click on "share mircophone"
  • The clients will be using their smartphone to listen.
  • the latency must be super low.

I did not find any WebRTC Demo that worked. All of them are either p2p or the scalable Broadcasting from muaz khan is only working for the initiator; not clients.

I came across Janus (which I didn't really understand what exactly this is doing) but I don't get how to install this and how to configure it.

Is there any way to easily share the microphone's output via WebRTC? Something like Apache hosting a simple website where the microphone audio is hosted on?

Thanks for all the ideas on how to solve it!

1

1 Answers

1
votes

Is there any way to easily share the microphone's output via WebRTC?

No. There's nothing easy or simple about WebRTC.

the broadcaster is a screenless raspberry, so I can't open a Webbrowser and click on "share mircophone"

This is the simplest option... running a browser. Are you sure you need to actually allow it to access the audio device?

In the past, I've used a flag on Chromium to get around this problem. I don't remember exactly what that flag was, but looking at the list, it might have been...

--use-fake-ui-for-media-stream

You might also be able to use --enable-kiosk-mode.

At a minimum, if you were to open the browser interactively and enable access, that page would get automatic access in the future.

I did not find any WebRTC Demo that worked. All of them are either p2p

WebRTC is peer-to-peer, but remember that the "server" can be one of those "peers".

Finally, you can look into using GStreamer, but don't expect anything quick and easy. https://github.com/centricular/gstwebrtc-demos