Howto – streaming MP3 server.
IceCast is de server die ik hier zal gebruiken. Shoutcast is een andere‚ maar ik heb het idee dat die zich meer en meer focust op het windows platform‚ maar daar kan ik naast zitten.
[url]http://www.icecast.org/[/url]
IceCast is geschreven voor linux‚ en geport naar andere os-en. De verschillen met FreeBSD bevinden zich vnl. in de documentatie.
IceCast kan je op 3 manieren compileren‚ maar wij doen het volgens het beproefde recept.
[shell]# /usr/ports/audio/icecast && make install clean
[/shell]
FreeBSD compileert op deze manier met de optie –with-libwrap. zie de Makefile.
icecast installeert zich op 3 plaatsen.
1 – /usr/local/sbin/icecast
2 – /usr/local/etc/icecast/conf en /usr/local/etc/icecast/templates
3 – /usr/local/share/doc/icecast/manual.html
in die conf dir staan 4 bestanden‚ waarvan ik icecast.conf.dist kopieer
[shell]# cp /usr/local/etc/icecast/conf/icecast.conf.dist /usr/local/etc/icecast.conf
[/shell]
en open icecast.conf met je fav. tekst editor
de opties die je hier tegenkomt spreken allemaal voor zich en zijn allemaal zeer goed gedocumenteerd‚ derhalve zal ik ze niet stuk voor stuk behandelen.
enkele die een opmerking behoeven zijn:
– afhankelijk van je netwerk/internet-vebinding zal je de max. users in moeten stellen wil je de mp3`s luisteren ipv buffers vol en vooral leeg zien lopen
– server_name moet je een geldige domeinnaam geven. en als het niet anders kan je i.p.adres
– staticdir. hier geef je de dir op van je mp3`s
je kan nu IceCast opstarten met diverse opties. Ik kies ervoor om em op de achtergrond te laten draaien.
[shell]# /usr/local/sbin/icecast -b
[/shell]
wat nog rest zijn de beveiligings instellingen. je kan hiervoor de bestanden gebruiken in /usr/local/etc/icecast/conf of je maakt gebruik van tcp_wrappers in /etc/hosts.allow.
ok. nu draait IceCast‚ maar je hebt er nog niet zo veel aan. wat je nu nog nodig hebt is een encoder.
er zijn twee verschillende encoders. een die niets re-encode en alles eigenlijk doorgeeft wat ie in zijn handen krijgt en een die re-encode‚ waarbij streams naar lagere bitrates omgezet kunnen worden ten behoeve van de bandbreedte.
ik ga voor de eerste om 2 redenen.
1 – ik gebruik het op een alleen lokaal netwerk en heb met 100mbit genoeg bandbreedte.
2 – ik heb mijn geluidskaart nog niet geinstalleerd en weet niet zeker of ik die nodig heb voor re-encoden.
met een re-encoder is overigens veel meer mogelijk. je kan bv. reclame boodschappen broadcasten (“soup is good food!”) en geluid via je mic erdoor mixen (“Yo yo yo knakkerrrrrrrs”).
LiveIce heet ie. [url] http://star.arm.ac.uk/~spm/software/liveice.html[/url]
maar zoals gezegd: ik ga voor de eerste welke is shout.
[shell]# /usr/ports/audio/shout && make install clean
[/shell]
de binary komt hier. /usr/local/bin/shout
de conf bestanden komen bij IceCast in de directory te staan.
De enige die ons nu interesseert is /usr/local/etc/icecast/shout.conf.dist
[shell]# cp /usr/local/etc/icecast/shout.conf.dist /usr/local/etc/icecast/shout.conf
[/shell]
en open shout.conf met je fav. tekst editor.
alle opties zijn hier zonodig nog overzichtelijker en evengoed gedocumenteerd als icecast.conf.
ze spreken zo voor zich dat ik er niet op in kan gaan. daarbij zijn het vooral persoonlijke voorkeuren die zich hier laten gelden.
wat ik zelf dan belangrijk vind is 1 shuffle yes 2 daemon yes 1 om niet steeds diezelfde reeks aan te hoeven horen en 2 om geen console window in beslag te nemen.
rest nog de behoefte aan een playlist‚ die resideert als /usr/local/etc/icecast/shout.playlist
hierin zet je je mp3`s voorzien van absolute locatie. …eh bv
/mp3/toffemuziek/brintjespiers/crazy.mp3
/mp3/flauwedeuntjes/napalmdeath/yousuffer.mp3
etc..
nu opstarten maar
[shell]# /usr/local/bin/shout
[/shell]
als het goed is heb je nu een streaming mp3 server.
wat je als laatste nodig hebt is xmms of winamp om die stroom op te vangen en door je boxen heen te jagen.
open url: http://icecast.snodaards.nl:8000/ bv.
laatste opmerkingen:
IceCast kan je benaderen via een webinterface op poort 8000.
sowieso kan je veel doen via een httpserver.
zie de directory /usr/local/etc/icecast/templates voor meer informatie.
heb je commentaar‚ onjuistheden gezien etc. schroom niet te reageren.
Sarnix
1) [url] http://star.arm.ac.uk/~spm/software/liveice.html%5B/url%5D
moet [url]http://star.arm.ac.uk/~spm/software/liveice.html[/url] zijn
2) WinAMP kun je gebruiken omtestreamen.Heb je de ShoutCast DSP plugin nodig. Compatible met IceCast ofcourse. Deze heeft ook een mic feature maar bijmij werkt dat brak: dan wordt het automagisch 24kbit/mono.
3) Xmms met Xmms-liveice werkt ook erg lekker en isniet buggy. Je kunt dus op bijv. een Linux workstation bak streamen naar je server. Deze relayed door naar een dikke server. En voila. Works flawless 🙂
4) Je had misschien iets kunnen vertellen over relay’s. Da’s vrij interessant enzo. Ook ACL’s had je mbt. best mogen uitleggen is ook interessant.
Tsja, ik heb het zo opgezet als hierboven, maar de stream happert af en toe. dan die je in winamp “buffering…40%…60%…etc”. Ook komen de ID3 tags niet in beeld, alleen de station-name….
Tsja, ik heb het zo opgezet als hierboven, maar de stream happert af en toe. dan die je in winamp “buffering…40%…60%…etc”. Ook komen de ID3 tags niet in beeld, alleen de station-name….