This tutorial provides step by step instructions on how to install a live streaming media system on Debian Buster (Debian 10).
Create or install a Debian Buster server first and then follow the instructions. Please, don't install a desktop environment, only the standard packages... At least 2 cores and 4 GB RAM are recommended for this setup.
Run each command on this tutorial as root
.
If the server is behind a firewall, open the following ports:
- TCP/80
- TCP/443
- TCP/8000
- TCP/1935
Installation will be done with emrah-buster installer.
wget https://raw.githubusercontent.com/emrahcom/emrah-buster-base/master/installer/eb
wget https://raw.githubusercontent.com/emrahcom/emrah-buster-templates/master/installer/eb-livestream.conf
bash eb eb-livestream
This is optional. You don't have to use a certificate.
Let's say the host address is live.mydomain.com
. To set the Let's Encrypt
certificate:
set-letsencrypt-cert live.mydomain.com
The streaming media system has two containers:
- Origin
- Edge
The origin
container listens the RTMP port for the coming stream and converts
it to the HLS
and DASH
fragments. H.264
and AAC
supported.
The edge
container publishes the HLS
and DASH
fragments over http
and
https
.
Use the following link format to push an RTMP stream:
rtmp://<HOST_ADDRESS>/livestream/<CHANNEL_NAME>
Use the following link to check the RTMP status:
http://<HOST_ADDRESS>:8000/livestream/status
Use the following link formats for the player pages:
http://<HOST_ADDRESS>/livestream/hlsplayer/<CHANNEL_NAME>
http://<HOST_ADDRESS>/livestream/dashplayer/<CHANNEL_NAME>
Use the following link formats to pull a stream:
http://<HOST_ADDRESS>/livestream/hls/<CHANNEL_NAME>/index.m3u8
http://<HOST_ADDRESS>/livestream/dash/<CHANNEL_NAME>/index.mpd
The stream cloner publishes a stream to the multiple locations (Youtube, Facebook etc.) simultaneously.
The stream cloner link is:
http://<HOST_ADDRESS>:8000/livestream/cloner