Audio Streaming di Ubuntu

Icecast adalah project opensource yang terdiri dari kumpulan program dan library yang mampu melakukan streaming audio melalui internet. Dengan memanfaatkan format mp3 dan ogg vorbis dan dengan data rate yang cukup hemat, Icecast umumnya dimanfaatkan untuk membangun radio online. Jika komputer kita terhubung dengan internet dan memiliki IP public, dengan memanfaatkan Icecast kita bisa membangun server radio online. Tidak terbatas hanya di internet, Icecast juga bisa dimanfaatkan untuk keperluan broadcasting music di intranet.
Instalasi Icecast
Seperti instalasi aplikasi lainnya di Ubuntu Linux, langkah pertama yang harus disiapkan adalah menyiapkan source.list untuk apt-get. Kita bisa menggunakan repository online maupun repository offline (DVD). Setelah siap, lakukan instalasi Icecast dengan mengetikan command line berikut ini di terminal :

sudo apt-get icecast2

Selanjutnya sistem akan mendownload dan mengintall icecast server, membuat user dan grup user untuk icecast dan menyiapkan service (belum langsung menyala) icecast server. Edit file /etc/default/icecast2 supaya init.d script untuk icecast server di-enable :

sudo gedit /etc/default/icecast2

Ubah baris ENABLE=false menjadi ENABLE=true. Lanjutkan dengan menyiapkan file konfigurasi icecast server :

sudo gedit /etc/icecast2/icecast.xml

Ini adalah contoh file config icecast sederhana :

<icecast>
 <limits>
 <clients>100</clients>
 <sources>2</sources>
 <threadpool>5</threadpool>
 <queue-size>524288</queue-size>
 <client-timeout>30</client-timeout>
 <header-timeout>15</header-timeout>
 <source-timeout>10</source-timeout>
 <burst-on-connect>1</burst-on-connect>
 <burst-size>65535</burst-size>
 </limits>

 <authentication>
 <source-password>password_ayam</source-password>
 <relay-password>password_ayam</relay-password>
 <admin-user>admin</admin-user>
 <admin-password>password_ayam</admin-password>
 </authentication>

 <hostname>192.168.1.1</hostname>
 <listen-socket>
 <port>8000</port>
 </listen-socket>

 <fileserve>1</fileserve>
 <paths>
 <basedir>/usr/share/icecast2</basedir>
 <logdir>/var/log/icecast2</logdir>
 <webroot>/usr/share/icecast2/web</webroot>
 <adminroot>/usr/share/icecast2/admin</adminroot>
 <alias source="/" dest="/status.xsl"/>
 </paths>

 <logging>
 <accesslog>access.log</accesslog>
 <errorlog>error.log</errorlog>
 <loglevel>4</loglevel>
 <logsize>10000</logsize>
 </logging>

 <security>
 <chroot>0</chroot>
 </security>
</icecast>

Setelah file konfigurasi siap, kita bisa mulai menjalankan icecast server :

sudo /etc/init.d/icecast2 start

Kita bisa memeriksa icecast server kita melalui browser dengan cara mengakses alamat http://localhost:8000 atau localhost bisa diganti dengan alamat IP server icecast kita. kita siapkan aplikasi ices yang bertugas merubah inputan audio dari soundcard kita menjadi format audio digital terkompresi (mp3 atau ogg) dan mengirimkannya ke icecast server. Install dengan menggunakan apt-get lalu siapkan juga file konfigurasinya :

sudo apt-get install ices2
sudo gedit /etc/icecast2/ices.xml

<?xml version=”1.0??>
<ices>
<background>0</background>
<logpath>/var/log/icecast2</logpath>
<logfile>ices.log</logfile>
<loglevel>4</loglevel>
<consolelog>0</consolelog>
<pidfile>/usr/local/icecast2/ices.pid</pidfile>
<stream>
<metadata>
<name>Chicken FM</name>
<genre>Acid Industrial Dangdut</genre>
<description>The most chicken friendly online station.</description>
<url>http://192.168.1.1</url>
</metadata>
<input>
<module>alsa</module>
<param name=”rate”>44100</param>
<param name=”channels”>2</param>
<param name=”device”>plughw:0,0</param>
<param name=”metadata”>0</param>
<param name=”metadatafilename”>live</param>
</input>
<instance>
<hostname>192.168.1.1</hostname>
<port>8000</port>
<password>passwordnya_ayam</password>
<mount>/highband.ogg</mount>
<yp>0</yp>
<reconnectdelay>2</reconnectdelay>
<reconnectattempts>5</reconnectattempts>
<maxqueuelength>80</maxqueuelength>
<encode>
<quality>2</quality>
<nominal-bitrate>96000</nominal-bitrate>
<samplerate>44100</samplerate>
<channels>2</channels>
</encode>
</instance>
</stream>
</ices>

Tancapkan source audio anda (bisa output dari walkman, tape, mp3 player atau output soundcard itu sendiri) ke jack mic di soundcard. Jalankan ices dan radio kita siap diakses melalui http://ip_address_server:8000/highband.ogg (bisa menggunakan gunakan Winamp / XMMS, caranya tekan Ctrl+L lalu ketikan URL radio kita). Menjalankan ices :

sudo ices2 /etc/icecast2/ices.xml

Untuk mendapatkan hasil maksimal (suara bagus dan delay sekecil mungkin) kita bisa melakukan perubahan konfigurasi ices.xml , merupakan tantangan tersendiri untuk menemukan kombinasi konfigurasi yang tepat. Selamat mencoba!
Terimakasih http://www.diki.or.id





Tulis Komentar