Skip to content

Broadcast and listen to WebRTC audio streams on a local network using peer-to-peer connections

Notifications You must be signed in to change notification settings

kmturley/webrtc-radio

Repository files navigation

alt text

webrtc-radio

Radio web app which broadcasts audio across your local network using:

  • WebRTC
  • Angular 8.2.x
  • NodeJS 10.16.x
  • socket.io 2.3.x

Note: This project supports multiple broadcasts with peer-to-peer communication, which is complex. If you only need a single audio broadcast server, check out https://github.com/meetecho/janus-gateway in particular this example https://janus.conf.meetecho.com/streamingtest.html

Installation

Install dependencies using:

npm install

Generate an SSL key and certificate using:

npm run generate

Usage

Run production HTTPS and Socket.io local servers using:

npm start

Access the web frontend at:

https://localhost:8080

Development with live reload

In seperate terminals run the dev servers using:

npm run dev:backend
npm run dev:frontend

Go to both urls and allow unsafe browser access to https at:

https://localhost:8080
https://localhost:4200

Then develop using the live reload page at:

https://localhost:4200

Understanding SDP output

Create a file containing the SDP data called:

sdp.txt

To then convert into a human readable structured output run:

npm run parser

Then open the generated file:

sdp.json

Limitations

  1. Maximum bitrate is 520kb/s stereo, which is 260kps per channel.
  2. Actual bitrate depends on the speed of your network and strength of your signal.

Directory structure

/src                           --> Web source files

Contact

For more information please contact kmturley

About

Broadcast and listen to WebRTC audio streams on a local network using peer-to-peer connections

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published