Saturday, March 14, 2009

Shoutcast merupakan salah satu freeware streaming radio server. Instalasinya sangat mudah tentunya dengan beberapa keterbatasan yang ada, salah satunya adalah delay time dari sumber ke hasil streaming. Delay time dipengaruhi oleh nilai encoding, juga kualitas koneksi internet.

Sebelum instalasi tentunya kita download dahulu file – file yang kita butuhkan yaitu :

· sc1-9-8/sc_serv_1.9.8_Linux.tar.gz (berisi file – file untuk server dan konfigurasinya)

· sc_trans_posix_040.tgz (berisi file – file untuk mengatur playlist)

root@server:/usr/src# wget http://yp.shoutcast.com/downloads/sc1-9-8/sc_serv_1.9.8_Linux.tar.gz

root@server:/usr/src# wget http://yp.shoutcast.com/downloads/sc_trans_posix_040.tgz

Instalasi Shoutcast Server :

· Extrak file hasil download tadi:

root@server:/usr/src# tar –xzvf sc_serv_1.9.8_Linux.tar.gz

sc_serv_1.9.8_Linux/

sc_serv_1.9.8_Linux/ sc_serv*

sc_serv_1.9.8_Linux/ sc_serv.conf

sc_serv_1.9.8_Linux/ README.TXT

· Ganti nama direktory biar tidak ribet :

root@server:/usr/src# mv sc_serv_1.9.8_Linux radio_serv

Pindah direktory dan isinya ke /usr/local :

root@server:/usr/src# mv radio_serv /usr/local/

· Konfigurasi :

root@server:/usr/src#cd /usr/local/radio_serv

root@server:/usr/local/radio_serv#pico sc_serv.conf

Password=123456 #ganti password sesuai keinginan

PortBase=8000

LogFile=sc_serv.log

ShowLastSongs=10

ScreenLog=1

SrcIP=ANY

DestIP=ANY

ContentDir=/home/lagu #atau ganti sesuai direktory dimana direktoty lagu berada.

AdminPassword= …….. #password admin sesuai keinginan

Instalasi Shoutcast Trans :

· Extrak file hasil download tadi:

root@server:/usr/src# tar –xzvf sc_trans_posix_040.tgz

sc_trans_posix_040/

sc_trans_posix_040/ sc_trans_linux*

sc_trans_posix_040/ sc_trans_freebsd*

sc_trans_posix_040/ sc_trans_macosx*

sc_trans_posix_040/ sc_trans.conf

sc_trans_posix_040/ example.lst

Ganti nama sc_trans_posix_040 menjadi radio_trans

root@server:/usr/src# mv sc_trans_posix_040 radio_trans

· Pindah direktory dan isinya ke /usr/local :

root@server:/usr/src# mv radio_serv /usr/local/

· Konfigurasi :

root@server:/usr/src# cd /usr/local/ radio_trans

root@server:/usr/local/ radio_trans# pico sc_trans_linux*

PlaylistFile=/usr/local/radio_trans/lagu.lst # atau buat nama list lagu yang lain.

ServerIP=xxx.xxx.xxx.xxx # isi dengan IP server linux

ServerPort=8000 # port server

Password= 123456 # password harus sama dengan password di sc_serv.conf

StreamTitle= Radio Online # judul streaming

StreamURL=http://xxx.xxx.xxx.xxx:8000 # isi dengan ip atau domain dari server

Genre=radio

Bitrate=128000 # bit rate disesuailan bw kita.

· Buat Playlist lagu :

root@server:/usr/local/ radio_trans# find /home/lagu -type f -name "*.mp3" > /usr/local/radio_trans/lagu.lst

· Menjalankan Streaming :

root@server:/usr/local/ radio_trans# /usr/local/radio_serv/sc_serv /usr/local/radio_serv/sc_serv.conf

************************************************************************

** SHOUTcast Distributed Network Audio Server

** Copyright (C) 1998-2004 Nullsoft, Inc. All Rights Reserved.

** Use "sc_serv filename.ini" to specify an ini file.

************************************************************************

Event log:

<03/13/09@13:55:51> [SHOUTcast] DNAS/Linux v1.9.8 (Feb 28 2007) starting up...

<03/13/09@13:55:51> [main] pid: 14887

<03/13/09@13:55:51> [main] loaded config from /usr/local/radio_serv/sc_serv.conf

<03/13/09@13:55:51> [main] initializing (usermax:32 portbase:8000)...

<03/13/09@13:55:51> [main] No ban file found (sc_serv.ban)

<03/13/09@13:55:51> [main] Loading rip list (sc_serv.rip)

<03/13/09@13:55:51> [rip] Added 2 IP's to Reserve List

<03/13/09@13:55:51> [main] opening source socket

<03/13/09@13:55:51> [main] source thread starting

<03/13/09@13:55:51> [source] listening for connection on port 8001

<03/13/09@13:55:51> [main] opening client socket

<03/13/09@13:55:51> [main] Client Stream thread [0] starting

<03/13/09@13:55:51> [main] client main thread starting

<03/13/09@13:55:51> [main] dns thread starting

root@server:/usr/local/ radio_trans#/usr/local/radio_trans/sc_trans_linux

/usr/local/radio_trans/sc_trans.conf

***********************************************************************

** TRANScast Distributed Network Audio Content Provider

** Copyright (C) 2000 Nullsoft, Inc. All Rights Reserved.

** Use "sc_trans filename.conf" to specify a config file.

***********************************************************************

<03/13/09@14:00:11> [TRANSCast] DNAS/posix v0.400-LAME (Mar 4 2003) starting up...

<03/13/09@14:00:11> [MAIN] PID: 17585

<03/13/09@14:00:11> [MAIN] Loaded config from /usr/local/radio_trans/sc_trans.conf

<03/13/09@14:00:11> [MAIN] Loading playlist (/usr/local/radio_trans/lagu.lst)

<03/13/09@14:00:11> [MAIN] Found (127) entries in playlist

<03/13/09@14:00:11> [MAIN] Playlist decoder thread starting

<03/13/09@14:00:11> [MAIN] Streaming thread starting

<03/13/09@14:00:11> [STREAM] Creating stream socket

<03/13/09@14:00:11> [STREAM] Connected to host server

<03/13/09@14:00:11> [DECODE] Opened 04_Peterpan_ -_ Di Kolam Renang.mp3

<03/13/09@14:00:11> [STREAM] Host server gave success (OK2)

<03/13/09@14:00:11> [STREAM] Stream to 127.0.0.1 established

<03/13/09@14:00:11> [STREAM] Sending stream information

<03/13/09@14:00:13> [MAIN] Title Updated

· Mematikan Streaming :

root@server:/usr/local/ radio_trans# killall sc_serv sc_trans

· Atau jika ingin mudah buat script berikut dna namakan dengan radio :

root@server:/usr/local/ radio_trans# pico radio

#!/bin/sh

# description: SHOUTcast streaming MP3 radio station server

radio="/usr/local/radio_trans/radio"

server="/usr/local/radio_serv"

trans="/usr/local/radio_trans"

find="/usr/bin/find"

lagu="/home/lagu/"

kill="/bin/killall sc_serv sc_trans"

list="/usr/local/radio_trans/lagu.lst"

case "$1" in

'start')

$server/sc_serv $server/sc_serv.conf >/dev/null 2 >&1 &

cd $trans

$find $lagu -type f -name "*.mp3" > lagu.lst

$trans/sc_trans $trans/sc_trans.conf

;;

'stop')

$kill

;;

'restart')

$radio start;$radio stop

;;

'edit')

pico $radio

;;

'playlist')

pico $list

;;

*)

echo "Usage: $0 { start | stop | restart | edit | playlist}"

;;

esac

exit 0

Buat file dengan mode executeble :

root@server:/usr/local/ radio_trans# chmod +x radio

Salin atau buat link ke /usr/local/sbin :

root@server:/usr/local/ radio_trans# ln radio –t /usr/local/sbin

Dimana jika kita ingin menjalankan, mematikan, restart dan melihat playlist, atau untuk edit script kita jalankan perintah di direktory manapun:

root@server:/usr/local/ radio_trans# radio start

root@server:/usr/local/ radio_trans# radio stop

root@server:/usr/local/ radio_trans# radio restart

root@server:/usr/local/ radio_trans# radio playlist

root@server:/usr/local/ radio_trans# radio edit

Sampai disini selesai sudah instalasi dan konfigurasi kemudian kita coba membuka web untuk administrator, buka browser dan ketikkan alamat url nya : http://(IP / domain dari server):8000.

Terakhir kita coba test mendengarkan streaming dengan WinAmp atau Windows Media Player dengan membuka url http://(IP / domain dari server):8000 atau http:// http://(IP / domain dari server)::8000/listen.pls