Update README

This commit is contained in:
Laura Hausmann 2021-01-24 04:09:41 +01:00
parent 59ad922978
commit 095f2c66e0
Signed by: zotan
GPG key ID: 5EC1D38FFC321311

103
README.md
View file

@ -8,4 +8,105 @@
- Copy example.db to app.db
- Create yourself a user using `sqlite3`
- Install [nginx-mod-rtmp](https://github.com/lhaus/nginx-mod-rtmp)
- Configure nginx-mod-rtmp (TODO: example config here)
- Configure nginx-mod-rtmp, example config below
- Start RTMPDash, example systemd unit below
## Further setup
- Customize privacy policy to your environment if you plan on hosting it publicly
## nginx-mod-rtmp example config
```
rtmp {
log_format rtmp '[$time_local] $command -> $app with key "$name" - $bytes_received bytes received ($session_readable_time)';
server {
listen 1935;
access_log /var/log/nginx/rtmp_access.log rtmp;
max_message 32M;
ping 1m;
ping_timeout 10s;
drop_idle_publisher 10s;
notify_method get;
application ingress {
live on;
allow play 127.0.0.1;
deny play all;
notify_relay_redirect on;
on_publish http://localhost:60001/api/authenticate;
}
application src {
live on;
allow publish 127.0.0.1;
deny publish all;
allow play 127.0.0.1;
deny play all;
hls on;
hls_path /mnt/ssd_data/hls/src;
hls_fragment 1s;
hls_fragment_naming system;
hls_playlist_length 60s;
hls_allow_client_cache enabled;
}
}
}
```
## RTMPdash example systemd unit (development)
```
[Unit]
Description=RTMPDash
Wants=network-online.target
After=network-online.target
[Service]
User=rtmpdash
Group=rtmpdash
WorkingDirectory=/opt/rtmpdash
Environment=ASPNETCORE_URLS='http://*:60001'
Environment=ASPNETCORE_ENVIRONMENT=Production
ExecStart=/usr/bin/dotnet watch run --no-launch-profile
Type=simple
TimeoutStopSec=20
# Lets built in updater work well.
Restart=on-failure
KillMode=control-group
[Install]
WantedBy=multi-user.target
```
## RTMPdash example systemd unit (production)
```
[Unit]
Description=RTMPDash
Wants=network-online.target
After=network-online.target
[Service]
User=rtmpdash
Group=rtmpdash
WorkingDirectory=/opt/rtmpdash
Environment=ASPNETCORE_URLS='http://*:60001'
Environment=ASPNETCORE_ENVIRONMENT=Production
ExecStart=/usr/bin/dotnet run --no-launch-profile
Type=simple
TimeoutStopSec=20
# Lets built in updater work well.
Restart=on-failure
KillMode=control-group
[Install]
WantedBy=multi-user.target
```