Streaming room in Node.js, RTMP, HSL, html5
Fully operational server and client for streaming and playing.
Features
Server:
- Has a RTMP server to receive streaming (e.g. from OBS studio)
- Converts RTMP to HSL when a RTMP is published
- WebSocket server for counting participants
- Simple room authentication
Client:
- HTML5 VideoJS player (supports Chrome, Firefox, iOS, Android)
- Chat room with usernames
- Password protected
How it works
Example:
[ OBS ] ββrtmp://localhost/live/liveββ> [ RTMP Server ] ββhslββ> [ HTTP server ] ββ.m3u8ββ> [ Videojs HTML5 player ]
Requirements
-
Nodejs
For web and RTMP server
Download here: https://nodejs.org/en/download/
How to use it
Clone this repository or download the code.
Open the project folder in terminal and run:
npm install
npm start
Open your browser in localhost:3000
- Username: [Anything]
- Password: room1
You might update the default login passwords and stream key in the file: config.json
Windows installation
Check the windows installation guide here
Development
npm run dev