kmturley / webrtc-radio

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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


Languages

Language:TypeScript 64.3%Language:JavaScript 13.4%Language:HTML 13.1%Language:SCSS 9.2%