Konfigurasjon av Nginx for mottak av videostrøm
1. Sjekk mappa som skal brukes
Under installasjonen av Nginx opprettes det ei mappe for innhold (selve programvaren ligger et annet sted).
Bruk kommandoen cd /var/www
til å flytte deg til webservermappa for webfiler. Bruk kommandoen ls -la
for å se innholdet i mappa.
Standard-HTML-siden for Nginx ligger i undermappa "html". Hvis du ønsker, kan du sjekke denne ved å gå inn i mappa cd html
og bruke kommandoen ls -la
for å få opp informasjon om fila.
Hvis du ønsker å inspisere fila, kan du bruke sudo nano index.nginx-debian.html
for å åpne fila i nano-editoren.
Trykk ned Ctrl + X for å gå ut av editoren når du har sjekket ut fila.
2. Lag mappe for HLS-chunks
For at strømmetjenesten skal fungere, trenger vi et område der midlertidige HLS-strømmingsbiter (chunks) kan lagres.
Vi starter med å lage ei mappe for filene:
sudo mkdir /var/www/hls
Vi sjekker eierstatus på den nye mappa:
ls -la /var/www
Som standard vil rootbrukeren stå som eier. For at webserveren skal kunne lage og slette midlertidige HLS-strømmingsbiter (chunks) fra mappa, ønsker vi å gi webserverens bruker eierskap over mappen:
sudo chown -R www-data:www-data /var/www/hls
Sjekk konfigurasjonen på nytt etterpå:
ls -la /var/www
3. Forbredelser til ny Nginx-konfigurasjon
I mappa /etc/nginx ligger selve konfigurasjonsfilene til Nginx. Den viktigste av disse konfigurasjonsfilene heter "nginx.conf".
I stedet for å overskrive denne fila direkte ønsker vi å beholde den i tilfelle vi vil reversere konfigurasjonen senere. Dette gjør vi ved å gi fila et nytt navn.
Først flytter vi vår plassering til /etc/nginx.
cd /etc/nginx
Vi ser hva som er i mappa.
ls
Ved å bruke en mv-kommando kan vi gi fila et nytt navn.
sudo mv nginx.conf nginx.old
Vi sjekker forandringen som er gjort.
ls
4. Lag ny nginx.conf-fil og legg inn RTMP basisconfigurasjon
Lag ny konfigurasjonsfil og legg inn konfigurasjonen under.
sudo nano nginx.conf
Bruk tastene Ctrl + X for å gå ut av editoren. Velg "yes" for å lagre forandringer som er gjort.
5. Restart Nginx for å aktivere ny konfigurasjon
Bruk kommandoen under for å restarte Nginx med den nye konfigurasjonen.
sudo systemctl restart nginx
Hvis du får opp feil, kan du bruke kommandoen under for å få mer informasjon om hvor feilen ligger i konfigurasjonen.
sudo systemctl status nginx
Bruk tastene Ctrl + Z for å komme ut av statusoversikten.
6. Test strømming til serveren
Bruk OBS eller annen programvare og sett opp en strømming mot serveren. Datamaskinen du strømmer fra, må være tilkoblet det samme lokale nettverket som din strømmeserver.
Protokollen er RTMP, og standardporten 1935 brukes. Adressen utformes som vist under.
rtmp://IP-adresse/show
Nøkkelen (streaming key) kan du sette til stream
.
Start strømming og se om tilkobling er vellykket.
Hvordan legge til strømmeserver i OBS
Start OBS (Open Broadcaster Software). Hvis det er første gang du kjører programmet, vil oppsettsveilederen starte automatisk. Gå ut av den for å følge resten av guiden.
Fra OBS-hovedvinduet trykker du på knappen "Innstillinger" nede til høyre i vinduet.
I "Innstillinger" velger du "Strøm" fra menyen til venstre. Under valget "Tjeneste" velger du "Egendefinert". Fyll inn informasjonen og trykk "OK" for å lagre forandringen.
Du kommer nå tilbake til OBS sitt hovedvindu.
Under videoboksen er boksen "Kilder". Trykk på plusstegnet under boksen og legg til en kilde fra menyen. For testing er det praktisk å bruke ei videofil, velg da "Mediekilde". Et vindu åpnes der du kan sette navn på mediekilden. Velg navn og gå videre. I neste vindu kan du velge videofil. Når du har gjort dette, kommer du tilbake til hovedvinduet. Start avspillingen av kilden og trykk på knappen "Start Strømming" nede til høyre.
Hvis strømmeserveren tar imot videostrømmen, vil det se ut som på bildet under.
For å sjekke at strømmeserveren omgjør RTMP-videostrømmen til HLS-chunks, kan vi sjekke chunksmappa etter disse.
ls /var/www/hls
Filene merket "Stream-XX.ts" er HLS-strømmingsbiter (chunks). Fila "Stream.m3u8" er ei spillelistefil. Denne bruker vi når vi kobler oss til strømmeserveren med avspillerne.