Izradite vlastiti poslužitelj za video streaming uživo s Linuxom
Većina alata i web-mjesta za prijenos uživo besplatni su za javnost, ali često zahtijevaju da stvorite račun, pružajući informacije koje možda ne želite da se pojavljuju na mreži. Mogu držati dio sadržaja iza reklama i uključiti zbunjujuće Uvjete pružanja usluge kojih se možda ni sami (Service)ne(can ) pridržavaju.
Postoje oni koji uživaju u mogućnosti prijenosa uživo, ali nemaju potrebu da njihovi videozapisi budu dostupni masama. Umjesto toga, radije bi imali veću kontrolu nad svojim streamom i sadržajem koji proizvode. Softver otvorenog koda(Open-source) , poput Linuxa(Linux) , najbolji je odgovor na ovu prepreku.
Razmišljanje unaprijed(Thinking Ahead)
Prije nego počnete postavljati svoj osobni poslužitelj za streaming, trebali biste si postaviti nekoliko pitanja. Prvo(First) , kakvu kvalitetu streama tražite? Zatim(Next) , koliko gledatelja očekujete privući? Gdje ćete pohraniti sav svoj streamani sadržaj? Tko će imati pristup tom sadržaju?
Zahtjevi sustava također se mogu smatrati problemom. Međutim, ne postoje utvrđena pravila o tome što će vam točno trebati u tom pogledu, stoga učinite sebi uslugu i eksperimentirajte kako biste vidjeli što najbolje odgovara vašim ciljevima.
Morat ćete shvatiti koji će protokol upravljati audio i video dijelom strujanja. Protokol za razmjenu poruka(Messaging Protocol) u stvarnom vremenu ( RTMP ) izvrstan je izbor, ali postoje i drugi, kao što je WebRTC , koji bi mogli biti bolji u vašoj situaciji. RTMP ima široku podršku pa ćemo se u ovom članku usredotočiti na to.
Još jedna stvar o kojoj morate brinuti su vjerojatno kašnjenje u vašem "uživo" streamingu. Samo zato što idete uživo ne znači da će se sve savršeno uskladiti. Video streamovi moraju biti kodirani, prenijeti, spremljeni u međuspremnik i prikazani, stoga očekujte potrebu za malim podešavanjem atributa streama.
Postavljanje Linux poslužitelja(Linux Server Setup)
Ubuntu Linux je moj osobni favorit, tako da će to biti verzija izbora ovdje. Za one koji preferiraju GUI opciju, dostupan je Ubuntu Desktop .
- Pokrenite(Fire) instalacijski program Ubuntua(Ubuntu) i odaberite postavke koje najbolje odgovaraju vašim potrebama. Vjerojatno ćete htjeti postaviti neke statičke mrežne postavke jer će se ovo koristiti kao poslužitelj.
- Ponovno pokrenite(Reboot) sustav nakon instalacije ako to ne učini automatski. Nakon što se Ubuntu sustav pokrene, instalirajte sva dostupna ažuriranja:
sudo apt update
sudo apt upgrade
Koristit ćemo Nginx web poslužitelj(Nginx web server) za ovaj streaming server. Instalirajte ga:
sudo apt install nginx
Nabavite RTMP modul kako bi Nginx mogao upravljati vašim medijskim streamom:
sudo add-apt-repository universe
sudo apt install libnginx-mod-rtmp
Prilagodite konfiguraciju Nginxa tako da može prihvatiti i isporučiti vaš medijski stream.
sudo nano /etc/nginx/nginx.conf
Dodajte sljedeći kod na dno konfiguracijske datoteke:
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
}
}
}
Spremite konfiguracijsku datoteku jer ćemo je kasnije koristiti za stvaranje radnog poslužitelja za streaming.
Ponovno pokrenite Nginx(Restart Nginx) s novom konfiguracijom:
sudo systemctl restart nginx
Postavljanje softvera za strujanje(Streaming Software Setup)
Poslužitelj je spreman, pa je sada vrijeme da postavite svoj softver za streaming. Upotrijebimo Open Broadcaster Software (OBS) u ovom provođenju.
- Idite na stranicu i odaberite build za Linux . Nakon što se softver pokrene, konfigurirajte OBS s postavkama koje najbolje odgovaraju vašem hardveru.
- Dodajte izvor strujanja klikom na + neposredno ispod Izvor(Source) .
- Radi testiranja odaberite Display Capture i unesite naziv izvora.
- Kliknite gumb U redu(OK) i OBS će preslikati vašu radnu površinu.
- Zatim kliknite karticu Datoteka(File) i odaberite Postavke(Settings) .
U odjeljku Stream odaberite Set Stream Type na Custom...(set Stream Type to Custom…) i unesite sljedeći URL u polje Server :
rtmp://IPaddress/live
Umjesto IP(IPaddress) adrese unesite IP adresu vašeg streaming servera.
Sada stvorite vlastiti ključ streama(Stream Key) i unesite ga u okvir za ključ streama(Stream) . Neka bude nešto što ćete pamtiti i zapišite. Za dodatnu sigurnost, označite okvir Koristi provjeru autentičnosti(Use authentication ) i dodajte željene vjerodajnice.
Završite s Apply nakon čega slijedi gumb OK .
Sada bi sve trebalo biti konfigurirano za streaming. Da biste započeli svoj prvi stream, pritisnite gumb Stream Now . Gumb će se promijeniti u Zaustavi strujanje(Stop Streaming) sve dok je sve učinjeno ispravno. Mjerni podaci o propusnosti vašeg streama pojavit će se na dnu OBS prozora.
Budite svoj prvi gledatelj(Be Your First Viewer)
Postoji mnogo open source media playera koji podržavaju RTMP , od kojih je najpoznatiji VLC media player . Instalirajte i pokrenite ovaj softver, kliknite karticu Mediji(Media) i s izbornika odaberite Open Network Stream .
Imate(Got) li pri ruci svoj ključ streama ? (Stream Key)Upišite put do svog streama i uključite ključ streama(Stream Key) koji ste prethodno postavili na kraj. Trebao bi izgledati:
rtmp://IPaddress/live/SecretKey
Kliknite Reproduciraj(Play) i dobit ćete pogled uživo na svoj vlastiti stream.
Dodatne mjere(Additional Measures)
Sada kada su osnove postignute, ograničavanje pristupa vašem streaming poslužitelju i mogućnost snimanja i spremanja vaših videozapisa dva su druga čimbenika koja bi vas mogla zanimati.
Prema zadanim postavkama, svatko može vidjeti vaš stream. To bi moglo biti protiv svrhe stvaranja poslužitelja na prvom mjestu. Poželjet ćete postaviti ograničeni pristup pomoću Linux vatrozida, .htaccess datoteke(.htaccess file) ili ugrađenih kontrola pristupa u RTMP modulu(built-in access controls in the RTMP module) . Ovaj izbor je prepušten vama.
Ovdje navedena konfiguracija Nginxa(Nginx) omogućit će vam samo streamanje videozapisa, ali ne i njihovo spremanje. Da biste dodali opciju pohrane, u konfiguraciji Nginxa(Nginx) , odmah ispod RTMP odjeljka, možete postaviti opcije snimanja streama i navesti mjesto na koje želite da se vaš sadržaj sprema i pohranjuje.
Postavite(Set) postojeći put kako biste omogućili Nginxu(Nginx) da na njega piše. Unesite sljedeće:
aplikacija uživo { (application live {)
live on;
zabilježiti sve; ( record all;)
record_path /var/www/html/recordings;
record_unique on;
}
To je sve što biste trebali trebati kada postavljate live streaming server koristeći Ubuntu Linux OS . Ako vas više zanima poslužitelj za streaming medija koji nije uživo, predlažem korištenje Plexa(Plex) umjesto OBS-a.
Related posts
Napravite prilagođeni Live Linux Distro s Linux Live Kitom
Linux FIND naredba s primjerima
5 sjajnih razloga za odbacivanje Windowsa za Linux
HDG objašnjava: Što je UNIX?
9 najboljih Linux distribucija za hakiranje
Trikovi terminala: Koristite terminal kao budilicu
Dodajte prečace u kontekstni izbornik desnom tipkom miša u Ubuntuu
7 najboljih besplatnih antivirusnih programa za Linux
9 korisnih stvari koje Linux može učiniti, a Windows ne može
BSD protiv Linuxa: Osnovne razlike
5 načina za automatizaciju sigurnosne kopije datoteka u Linuxu
Stvorite i uredite zip datoteke u Linuxu pomoću terminala
Kako sastaviti softverske pakete na Linuxu
Instalirajte Adobe Digital Editions u Ubuntu Linux
Kako instalirati gotovo svaki pisač na Ubuntu
6 jednostavnih načina da ubrzate instalaciju Ubuntua
Razumijevanje Dozvola za Linux i korištenje chmoda
10 najpopularnijih softverskih izbora za novog korisnika Ubuntua
Pronađite i promijenite svoje ime hosta u Ubuntuu
Nasilno zatvorite program u Ubuntu