Radio Streaming na FreeBSD 10 uz IceCast i Ices

Radio Streaming na FreeBSD 10 uz IceCast i Ices

Sljedeći vodič objašnjava kako postaviti IceCast radio streaming server i reproducirati audio datoteke (glazbe ili podcaste) na FreeBSD platformi. Ovaj vodič pretpostavlja da koristite FreeBSD 10.0 ili noviju verziju i da ste prijavljeni kao root korisnik. Također se pretpostavlja da imate uređivač teksta za uređivanje konfiguracijskih datoteka.

Prije nego što počnemo, važno je razumjeti tri dijela audio streaming poslužitelja. Prvo, imamo sam poslužiteljski softver, IceCast. IceCast djeluje poput središnjeg čvorišta gdje audio streamovi ulaze i šalju se. Usluga IceCast preuzima audio streamove od izvornih klijenata. Izvorni klijenti su programi koji čitaju audio datoteke ili druge izvore zvuka, kao što su mikrofoni. U našem primjeru, izvorni klijent je Ices i on isporučuje audio stream na IceCast poslužitelj. Treća komponenta je klijent koji sluša. Audio tokovi putuju od IceCast poslužitelja do slušatelja koji potom čuju zvuk. Obično je klijent za slušanje desktop aplikacija, kao što je web preglednik, VLC multimedijski player ili WinAMP. Vizualno, raspored izgleda ovako:

 Source client (Ices) --> IceCast server --> Listening client (browser)

Za postavljanje IceCast streaming poslužitelja na FreeBSD, prvo instaliramo sam softver poslužitelja. To se može učiniti pokretanjem sljedeće naredbe.

 pkg install icecast2

Zatim otvorimo /etc/rc.confdatoteku i omogućimo pozadinsku uslugu IceCast. To se postiže dodavanjem sljedećeg teksta na dno /etc/rc.confdatoteke.

 icecast_enable="YES"

Naš sljedeći korak je konfiguracija usluge IceCast. Paket IceCast se isporučuje s uzorkom konfiguracijske datoteke koju možemo mijenjati. Ovaj uzorak datoteke nalazi se u /usr/local/etcdirektoriju. Napravit ćemo kopiju ove uzorke datoteke prije nego što je uredimo.

 cd /usr/local/etc
 cp icecast.xml.sample icecast.xml

Sada želimo urediti nekoliko ključnih polja icecast.xmldatoteke. Većinu datoteke možemo ostaviti sa zadanim postavkama, ali bismo trebali promijeniti podatke za prijavu. To možemo učiniti tako da posjetimo odjeljak za provjeru autentičnosti (oko 30. retka) i promijenimo izvornu lozinku i lozinku za prijenos u nešto prikladno. Ove lozinke će nam omogućiti prijenos podataka na IceCast poslužitelj s izvornog klijenta. Također bismo trebali promijeniti varijable admin-user i admin-password u nešto jedinstveno za naš sustav. Ove dvije vjerodajnice čuvaju web-sučelje poslužitelja IceCast. Zatim, oko reda 150, trebali bismo promijeniti varijable mount-name , username ilozinka . Ove tri varijable štite točku montiranja IceCast poslužitelja. Konačno, na dnu icecast.xmldatoteke trebali bismo vidjeti sigurnosni odjeljak koji je komentiran. Trebali bismo ukloniti simbole za otvaranje <-- i zatvaranje --> iz sigurnosnog odlomka. Nakon što je icecast.xmldatoteka promijenjena, spremite datoteku.

Nakon što je konfiguracijska datoteka uređena, želimo omogućiti bilježenje. Da biste to učinili, pokrenite sljedeće naredbe.

 mkdir /var/log/icecast
 chown nobody:nogroup /var/log/icecast

Konačno, pokrećemo IceCast poslužitelj, što uzrokuje da poslužitelj osluškuje ulazne i dolazne klijentske veze.

 service icecast2 start

IceCast poslužitelj je pokrenut i sada mu trebamo pružiti nešto za igranje. Naš sljedeći korak je instaliranje klijenta izvora Ices. FreeBSD trenutno ne nudi binarni paket za Ices, pa ga moramo izgraditi iz portova. To se može učiniti pokretanjem sljedećih naredbi.

 portsnap fetch
 portsnap extract
 cd /usr/ports/audio/ices
 make install
 make clean

Ices izvorni klijent trebat će korisnički račun i prijavu. Da biste stvorili korisnika za softver Ices i postavili lozinku za račun, pokrenite ove naredbe.

 pw groupadd ice
 pw useradd ices -g ice -m
 passwd ices

S kreiranim korisnikom sada možemo omogućiti prijavu za Ices.

 mkdir /var/log/ices
 chown ices:ice /var/log/ices

Od sada nadalje, više ne bismo trebali imati pristup root korisnika i možemo raditi kao korisnik icesa . Zatim moramo stvoriti dva direktorija. Jedan direktorij, music, sadržavat će audio datoteke koje ćemo streamati. Drugi direktorij, conf, sadržavat će naše konfiguracijske datoteke.

 su ices
 cd /home/ices
 mkdir music conf
 cp /usr/local/share/ices/ices-playlist.xml conf/configuration.xml

Sada imamo primjer konfiguracijske datoteke. Vrijeme je da uredite conf/configuration.xmldatoteku tako da odgovara našem okruženju. Jedini dijelovi datoteke koje trebamo promijeniti su dolje oko retka 60. Ovdje moramo dati lozinku i mjesto za montiranje koje smo postavili u icecast.xmldatoteci. Na primjer, ako postavimo ime za montiranje u icecast.xmldatoteci na /radio.ogg, tada bismo trebali promijeniti parametar montiranja naše configuration.xmldatoteke tako da bude . Naše polje lozinke u treba se podudarati s izvornom lozinkom koju smo kreirali u datoteci. Nakon što je naša datoteka uređena, morat ćemo spremiti naše promjene./radio.oggconfiguration.xmlicecast.xmlconfiguration.xml

S konfiguracijskom datotekom na mjestu, sljedeći korak trebao bi biti kopiranje audio datoteka koje želimo streamati u musicdirektorij. Sve audio datoteke trebaju biti u .oggformatu jer IceCast neće rukovati .mp3datotekama sa zadanim postavkama. Nakon što se sve audio datoteke koje želimo streamati nađu u musicdirektoriju, moramo stvoriti popis za reprodukciju. Popis za reprodukciju je obična tekstualna datoteka s popisom glazbe koju želimo streamati. Sljedećim naredbama možemo jednostavno stvoriti popis za reprodukciju.

 cd /home/ices/conf
 ls -d ../music/*.ogg > playlist.txt

Audio datoteke će se reproducirati redoslijedom kojim se pojavljuju u playlist.txtdatoteci. Datoteka se može uređivati ​​u bilo kojem uređivaču teksta kako bi se prilagodio redoslijed streaminga zvuka.

Sve što trebamo učiniti da započnemo strujanje naših audio datoteka je pokrenuti ovu naredbu.

 ices configuration.xml

Dodatna napomena: Često ćemo možda htjeti pokrenuti Ices izvorni klijent, a zatim se odjaviti i napraviti nešto drugo. U tom slučaju volim pokrenuti Ices unutar sesije ekrana . Evo primjera kako pokrenuti ices sa zaslonom.

 screen
 cd /home/ices/conf
 ices configuration.xml

Zatim pritisnite Ctrl + A i dodirnite D ključ. To će odvojiti sesiju zaslona i omogućiti nam da se odjavimo dok Ices reproducira audio u pozadini. Kasnije možemo zaustaviti Ices prijavom i pokretanjem:

 screen -r
 killall ices
 exit

Sada se možemo povezati s našim poslužiteljem na portu 8000 u web pregledniku kako bismo slušali naš audio stream. URL će izgledati kao http://myservername:8000. Ova adresa može biti javno dostupna ako želite dopustiti drugima da slušaju stream.

Ranije sam spomenuo da IceCast reproducira .oggdatoteke, a ne .mp3. To je prilično lako prevladati na FreeBSD-u. Kao root korisnik, možemo instalirati alat za pretvorbu, nazvan sox , koji će pretvoriti naše .mp3datoteke u .oggdatoteke. Pod pretpostavkom da su sve naše .mp3datoteke u /home/ices/musicdirektoriju, možemo instalirati sox i izvršiti konverziju na sljedeći način:

 pkg install sox
 cd /home/ices/music
 for i in *.mp3; do sox ./"$i" ./"$i".ogg; done

Zatim možemo osvježiti naš popis za reprodukciju pomoću:

 cd ../conf
 ls -d ../music/*.ogg > playlist.txt

Imajte na umu da strujanje zvuka može biti intenzivno propusno. Jedan ili dva klijenta koji slušaju našu radio stanicu neće zahtijevati veliku propusnost, ali 50 ili više klijenata moglo bi gurnuti poslužitelj preko dodijeljene mjesečne propusnosti. Dobra je ideja omogućiti ograničavanje propusnosti na poslužitelju za streaming kako biste izbjegli neočekivane financijske troškove.


Kako instalirati Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Kako instalirati Tiny Tiny RSS Reader na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Tiny Tiny RSS Reader je besplatan čitač i agregator vijesti otvorenog koda koji se hostira na webu (RSS/Atom), dizajniran za

Kako instalirati Wiki.js na FreeBSD 11

Kako instalirati Wiki.js na FreeBSD 11

Korištenje drugog sustava? Wiki.js je besplatna i moderna wiki aplikacija otvorenog koda izgrađena na Node.js, MongoDB, Git i Markdown. Izvorni kod Wiki.js je javni

Kako instalirati Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Pagekit 1.0 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Pagekit 1.0 CMS je prekrasan, modularan, proširiv i lagan, besplatan i otvoreni sustav za upravljanje sadržajem (CMS) s

Kako instalirati MODX Revolution na FreeBSD 11 FAMP VPS

Kako instalirati MODX Revolution na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? MODX Revolution je brz, fleksibilan, skalabilan, open source, Enterprise-grade Content Management System (CMS) napisan u PHP-u. To i

Postavljanje OpenBSD 5.5 64-bit

Postavljanje OpenBSD 5.5 64-bit

Ovaj članak vas vodi kroz postavljanje OpenBSD 5.5 (64-bit) na KVM s Vultr VPS. Korak 1. Prijavite se na Vultr upravljačku ploču. Korak 2. Kliknite na UPOTREBU

Kako instalirati osTicket na FreeBSD 12

Kako instalirati osTicket na FreeBSD 12

Korištenje drugog sustava? osTicket je sustav za kupnju ulaznica otvorenog koda za korisničku podršku. OsTicket izvorni kod je javno hostiran na Githubu. U ovom vodiču

Kako instalirati Flarum Forum na FreeBSD 12

Kako instalirati Flarum Forum na FreeBSD 12

Korištenje drugog sustava? Flarum je besplatan forumski softver sljedeće generacije otvorenog koda koji čini internetsku raspravu zabavnom. Izvorni kod za Flarum se nalazi o

Kako omogućiti TLS 1.3 u Nginxu na FreeBSD 12

Kako omogućiti TLS 1.3 u Nginxu na FreeBSD 12

Korištenje drugog sustava? TLS 1.3 verzija je protokola Transport Layer Security (TLS) koji je objavljen 2018. kao predloženi standard u RFC 8446

Instalirajte WordPress na OpenBSD 6.2

Instalirajte WordPress na OpenBSD 6.2

Uvod WordPress je dominantni sustav za upravljanje sadržajem na internetu. Pokreće sve, od blogova do složenih web stranica s dinamičkim sadržajem

Kako instalirati Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Subrion 4.1 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Subrion 4.1 CMS je moćan i fleksibilan sustav upravljanja sadržajem otvorenog koda (CMS) koji donosi intuitivan i jasan sadržaj

Kako konfigurirati DJBDNS na FreeBSD-u

Kako konfigurirati DJBDNS na FreeBSD-u

Ovaj vodič će vam pokazati kako konfigurirati DNS uslugu koju je lako održavati, lako konfigurirati i koja je općenito sigurnija od klasičnog BIN-a

Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

Kako instalirati Nginx, MySQL i PHP (FEMP) stog na FreeBSD 12.0

FEMP stog, koji je usporediv s LEMP stogom na Linuxu, zbirka je softvera otvorenog koda koji se obično instalira zajedno kako bi omogućio FreeBS

Instalacija MongoDB-a na FreeBSD 10

Instalacija MongoDB-a na FreeBSD 10

MongoDB je NoSQL baza podataka svjetske klase koja se često koristi u novijim web aplikacijama. Pruža upite visoke performanse, dijeljenje i replikaciju

Kako instalirati Monicu na FreeBSD 12

Kako instalirati Monicu na FreeBSD 12

Korištenje drugog sustava? Monica je sustav upravljanja osobnim odnosima otvorenog koda. Zamislite to kao CRM (popularni alat koji koriste prodajni timovi u th

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

OpenBSD kao rješenje za e-trgovinu s PrestaShopom i Apacheom

Uvod Ovaj vodič demonstrira OpenBSD kao rješenje za e-trgovinu koristeći PrestaShop i Apache. Apache je potreban jer PrestaShop ima složeni UR

Instalacija Fork CMS-a na FreeBSD 12

Instalacija Fork CMS-a na FreeBSD 12

Korištenje drugog sustava? Fork je CMS otvorenog koda napisan u PHP-u. Izvorni kod Forks nalazi se na GitHubu. Ovaj vodič će vam pokazati kako instalirati Fork CM

Kako instalirati Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Kako instalirati Directus 6.4 CMS na FreeBSD 11 FAMP VPS

Korištenje drugog sustava? Directus 6.4 CMS je moćan i fleksibilan, besplatan i otvoreni izvor Headless Content Management System (CMS) koji pruža programerima

Poboljšanje sigurnosti za FreeBSD pomoću IPFW i SSHGuard

Poboljšanje sigurnosti za FreeBSD pomoću IPFW i SSHGuard

VPS poslužitelji su često na meti uljeza. Uobičajena vrsta napada pojavljuje se u zapisnicima sustava kao stotine neovlaštenih pokušaja prijave ssh-om. Postavljanje

Postavite httpd u OpenBSD

Postavite httpd u OpenBSD

Uvod OpenBSD 5.6 uveo je novi demon pod nazivom httpd, koji podržava CGI (putem FastCGI) i TLS. Za instalaciju novog http nije potreban dodatni rad

Postavite iRedMail na FreeBSD 10

Postavite iRedMail na FreeBSD 10

Ovaj vodič će vam pokazati kako instalirati grupni softver iRedMail na novu instalaciju FreeBSD 10. Trebali biste koristiti poslužitelj s najmanje jednim gigabajtom o

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više