# Links > Tutorials >  Στήσιμο Shoutcast server σε Linux

## angelarcadia

*Πώς να στήσετε έναν Shoutcast Server σε linux*

*1.	Αρχικά κατεβάζουμε το shoutcast από τη nullsoft*
i) wget http://www.shoutcast.com/downloads/sc1- ... bc6.tar.gz

*2.	Εξάγουμε το Shoutcast*
i) tar -zxvf shoutcast-1-9-2-linux-glibc6.tar.gz

*3.	Tακτοποιούμε λίγο*
i) rm -rf shoutcast-1-9-2-linux-glibc6.tar.gz
ii) mv shoutcast-1-9-2-linux-glibc6 shoutcast
iii) cd shoutcast

Έτοιμο αλλά μένει να ορίσουμε καποια βασίκα πράγματα

*4.	Ανοίγουμε το sc_serv.conf*
i) vim shoutcast/sc_serv.conf

*5.	Kαι αλλάζουμε τα παρακάτω*
i) MaxUser
ii) Password
iii) PortBase

*6.	Restart/Start του server*
i) ./sc_serv sc_serv.conf

----------


## JOHNNY-B17

Ωραίος!  ::

----------


## noisyjohn

ωραία  ::  
Επίσης:
Για να ξεκινάει ο server στο boot και να έχει start, stop (στο παράδειγμα η εγκατάσταση είναι στο /usr/sbin/shoutcast)
βρήκα αυτό το script χθές, θέλει κάποιες προσαρμογές αλλα μου φαίνεται καλό


```
#!/bin/sh
#SHOUTcast Server 0.1 by RwZ
#For SHOUTcast Server

# Directorio de enjaulamiento
SHOUTJAIL=/shoutjail

# Directorio de configuraciΓ³n dentro de la jaula
SHOUTCONF=/etc/shoutcast

# Usuario no privilegiado con el que se ejecuta
SHOUTUSER=shoutcast

if [ "$UID" -ne 0 ];
then
        if [ "$UID" -ne 0 ];
        then
                echo "You must be root to run this script"
                exit 64
        fi
fi

check_pid ()
{
        if [ -e /var/run/sc_$1.pid ]
        then
                PID=`cat /var/run/sc_$1.pid`
        else
                PID=0
        fi
}

make_pid()
{
        PID=`pidof -s sc_serv`
        echo $PID > /var/run/sc_$1.pid
}

noconf ()
{
        echo ""
        echo "Wrong config file"
        echo "Please specify a filename"
        echo "-h|--help for usage"
        echo ""
        exit 68
}

start ()
{
        start-stop-daemon --start --background --nicelevel -20 
        --exec=/usr/sbin/chroot -- $SHOUTJAIL /bin/sudo -b -u 
        shoutcast /bin/sc_serv $SHOUTCONF/$1.conf

        make_pid $1
        check_pid $1

        if [ $PID -ne 0 ]
        then
                echo ""
                echo "Shoutcast server running with conf: "$1
                echo ""
        else
                echo ""
                echo "ERROR Shoutcast server failed to start"
                echo ""
                exit 66
        fi
}

stop ()
{
        check_pid $1

        if [ $PID -ne 0 ]
        then
                kill $PID
                echo ""
                echo "Shoutcast server killed with conf: "$1" and PID: "$PID" Stopped."
                echo ""
                rm /var/run/sc_$1.pid
        else
                echo ""
                echo "ERROR Shoutcast server with conf: "$1" Not Running."
                echo ""
                exit 67
        fi
}

case $1 in
-h|--help)
        echo ""
        echo "Shoutcast script by RwZ"
        echo "       start [config file]"
        echo "       stop [config file]"
        echo "       restart [config file]"
        echo "       status [config file]"
        echo ""
        ;;
start)
        check_pid $2

        if [ $PID -ne 0 ]
        then
                echo ""
                echo "Shoutcast server is already running with PID: " $PID
                echo ""
                exit 70
        else
                start $2
        fi
        ;;
stop)
        stop $2
        ;;
restart)
        stop $2
        start $2
        ;;
status)
        check_pid $2

        if [ $PID -ne 0 ]
        then
                echo ""
                echo "Shoutcast server with config file: "$2" Running with PID: "$PID
                echo ""
        else
                echo ""
                echo "Shoutcast server with config file: "$2" Not Running"
                echo ""
        fi
        ;;

* )
        echo ""
        echo "Invalid Argument $1"
        echo "-h|--help for usage"
        echo ""
        exit 69
        ;;
esac
exit 0
```

ΚΑΙ
/etc/init.d/shoutcast



```
#!/bin/sh
#SHOUTcast script 0.1 by RwZ
#For SHOUTcast server

#Path to ranchito script
SHOUTSCRIPT=/usr/sbin/shoutcast

case $1 in
        start)
                $SHOUTSCRIPT start config
        ;;
        stop)
                $SHOUTSCRIPT stop config
        ;;
        restart)
                $SHOUTSCRIPT restart config
        ;;
        status)
                $SHOUTSCRIPT status config
        ;;
        *)
                echo "Error"
        ;;
esac
exit 0
```

για ενεργοποίηση
(Para activarlo en una distribuci.. Ubuntu, ο συγγραφέας  ::  )
update-rc.d shoutcast defaults 99

υπό μελέτη ...

ΕΠΙΣΗΣ αν έχουμε και apache στημένο στο port 80 προσοχή στο sc_serv.conf
;Yport=80
Yport=4463
το Υport δεν πρέπει να είναι στο 80 αλλιώς δεν θα δουλέψει. Το yellow pages όμως δεν θα δουλέψει, οι παίδες το έχουν μόνο στο 80 (they are working on it ...)

----------


## dsfak

Καλά μέχρι εδώ... Το σηκώσαμε και παίζει.... 

Το streaming και τα τραγούδια πως τα παίζεις? Τα βάζεις σε έναν player δρομολογείς την μουσική στο shoutcast?

----------


## angelarcadia

Το παρακάτω περιγράφει πως να κάνετε streaming μέσω του winamp

*1)*Kατεβάστε το Shoutcast DJ DSP tool http://www.shoutcast.com/downloads/shou ... indows.exe
*2)*Ιnstall
*3)*Aνοιξτε το winamp-->Eπιλογές-->Plugins : DSP/Effect-->και επιλέγουμε το Nullsoft SHOUTcast Source DSP plugin. 
*4)*Εμφανίζεται ένα νέο παράθυρο στο winamp και στην καρτέλα *output* βάζουμε την ip shoutcast server και τον κωδικό πρόσβασης που είχαμε δηλώσει. Στις άλλες καρτέλες ρυθμίζουμε το bit-rate το input source κλπ...
Για να ακούσετε τον server σας, βάζετε στον broswer http://την ip του server: την πόρτα του server (η προεπιλογή ειναι 8080)

Ελπίζω να βοήθησα

----------


## noisyjohn

Θα πρέπει να εγκαταστήσεις το shoutcast plugin στον winamp (στα widnows) και αυτό θα αναλάβει τη σύνδεση και το streaming με τον server (θέλει το password που έχει βάλει στον server) Nullsoft Shoutcast Source DSP (dsp_sc.dll)

εδώ:
http://www.shoutcast.com/support/docs/d ... out=normal

EDIT: με πρόλαβαν ..

----------


## dsfak

> Το παρακάτω περιγράφει πως να κάνετε streaming μέσω του winamp
> 
> *1)*Kατεβάστε το Shoutcast DJ DSP tool http://www.shoutcast.com/downloads/shou ... indows.exe
> *2)*Ιnstall
> *3)*Aνοιξτε το winamp-->Eπιλογές-->Plugins : DSP/Effect-->και επιλέγουμε το Nullsoft SHOUTcast Source DSP plugin. 
> *4)*Εμφανίζεται ένα νέο παράθυρο στο winamp και στην καρτέλα *output* βάζουμε την ip shoutcast server και τον κωδικό πρόσβασης που είχαμε δηλώσει. Στις άλλες καρτέλες ρυθμίζουμε το bit-rate το input source κλπ...
> Για να ακούσετε τον server σας, βάζετε στον broswer http://την ip του server: την πόρτα του server (η προεπιλογή ειναι 8080)
> 
> Ελπίζω να βοήθησα


Συγνώμη αλλά αυτό το ήξερα...μέσα από Winblows να παίζεις μουσική...\

Το θέμα είναι πως από αντίστοιχο πρόγραμμα σε Linux μπορείς να παίζεις και να κάνεις και stream μέσω του shoutcast...  ::  

Κάτι δλδ σαν το winamp που να υποστηρίζει να παίζει μέσω του shoutcast...

----------


## noisyjohn

υπάρχει το muse http://dyne.org/software.php (προσοχή το muse που υπάρχει σε μερικές διανομές είναι άλλο, πρόκειται για audio-midi editor)
Τα κακά νέα είναι ότι οι περισσότεροι players σε linux για streaming υποστηρίζουν μόνο Ogg/Vorbis format που είναι και το μόνο πραγματικά ανοικτό πρότυπο. το mp3 δεν είναι !
Εγώ δεν έβγαλα άκρη και χρησιμοποιώ το winamp από windows  ::

----------


## PiCBuRn3r

> Αρχική Δημοσίευση από angelarcadia
> 
> Το παρακάτω περιγράφει πως να κάνετε streaming μέσω του winamp
> 
> *1)*Kατεβάστε το Shoutcast DJ DSP tool http://www.shoutcast.com/downloads/shou ... indows.exe
> *2)*Ιnstall
> *3)*Aνοιξτε το winamp-->Eπιλογές-->Plugins : DSP/Effect-->και επιλέγουμε το Nullsoft SHOUTcast Source DSP plugin. 
> *4)*Εμφανίζεται ένα νέο παράθυρο στο winamp και στην καρτέλα *output* βάζουμε την ip shoutcast server και τον κωδικό πρόσβασης που είχαμε δηλώσει. Στις άλλες καρτέλες ρυθμίζουμε το bit-rate το input source κλπ...
> Για να ακούσετε τον server σας, βάζετε στον broswer http://την ip του server: την πόρτα του server (η προεπιλογή ειναι 8080)
> ...


Δεν υποστηρίζει shoutcast αλλά σε Icecast2 που χρησιμοποιώ παίζει...

http://www.oddsock.org/tools/oddcastv3_jack/

Μπορείς και streamάρεις ήχο σε αρκετά φορμά και από οποιοδήποτε πρόγραμμα αναπαραγωγής που υποστηρίζει Jack. Περισσότερες πληροφορίες στο link που έδωσα πιο πάνω.  ::

----------


## Billaros

θα ηθελα να ρωτησω κανα 2 πραγματακια σε αυτο το σημειο τον φιλο angelcardia που εκανε το αρχικο post.
1) το αρχικο στησιμο του shoutcast που περιεγραψες στα 6 βηματα ως τι το εκανες; ως root ή μηπως εφτιαξες καποιο username shoutcast και το σεταρες εκει. ρωταω γιατι βρηκα αυτο καπου στο internet...
http://blog.webhosting.uk.com/2006/06/0 ... shoutcast/
που μοιαζει πολυ με το δικο σου αλλα αν δεις στην αρχη λεει καθαρα



> Generally you dont want to run shoutcast as root as that can be really bad. so we create a shoutcast user:
> 
> 1.) Login to root
> 2.) adduser shoutcast
> 3.) passwd shoutcast


και λιγο πιο κατω..



> Now login as the new shoutcast user.


οποτε τι τελικα ισχυει καλυτερα; να το σεταρουμε ως root ή ως shoutcast user;; και γιατι αραγε ο τυπος αναφερει οτι ειναι κακο να το τρεχεις σαν root;;

2) τι γινεται στη συνεχεια με το encoding κλπ οσον αφορα πακετα οπως το darkice που τρεχουν σε linux; με ποιον τροπο (αν ξερει καποιος) μπορουν να ενωθουν τα δυο προγραμματα ουτως ωστε το ενα να κανει το encoding και το αλλο το broadcasting;; γιατι αν δεν κανω λαθος εδω εξηγειτε εναν τροπο να γινουν ολα αυτα μεσω winamp και καποιων plugin, δηλαδη μεσω windows.  ::  

3) αν ξερει επισης καποιος, τι γινεται με τις libs για mp3, ogg vorbis κλπ. οπως το lame κλπ κλπ;;

γνωριζει καποιος και αν ναι μπορει να δωσει καποιες οδηγιες εδω;
thanX

----------


## angelarcadia

1)Εγω εκανα όλα τα βήματα ως root. 
Δεν ξερω γτ σε αυτο --->http://blog.webhosting.uk.com/2006/06/06/how-to-install-shoutcast/<--- φτιάχνει αλλον user. 

Για τα 2 και 3 δεν ξερω.  ::

----------


## PiCBuRn3r

> 2) τι γινεται στη συνεχεια με το encoding κλπ οσον αφορα πακετα οπως το darkice που τρεχουν σε linux; με ποιον τροπο (αν ξερει καποιος) μπορουν να ενωθουν τα δυο προγραμματα ουτως ωστε το ενα να κανει το encoding και το αλλο το broadcasting;; γιατι αν δεν κανω λαθος εδω εξηγειτε εναν τροπο να γινουν ολα αυτα μεσω winamp και καποιων plugin, δηλαδη μεσω windows. 
> 
> 3) αν ξερει επισης καποιος, τι γινεται με τις libs για mp3, ogg vorbis κλπ. οπως το lame κλπ κλπ;;


Με το darkice μπορώ και κάνω μετάδοση σε shoutcast/icecast server σε aac/mp3/ogg format, κατευθείαν από την κάρτα ήχου...
Το κάνεις compile με τα libraries για τα codec που θες και είσαι κομπλέ...
Αν είσαι εθισμένος στα παραθυρα παίζει και gui το darksnow...

Αν έχεις debian, ένα site που θα σε βοηθήσει είναι το http://debian-multimedia.org

----------


## zabounis

Πάρτε έναν οδηγό για το πως κάνουμε streaming κάποια κάρτα radio-tuner ή tv tuner.

I hope it helps.

----------


## Billaros

@ angelcardia
ΟΚ thanX για τη διευκρινηση
@ PiCBuRn3r 
ωραια, μολις βρω λιγο χρονο θα το δοκιμασω. thank u
@ zabounis
πολυ χρησιμος και ενδιαφερων και ο οδηγος σου  ::

----------


## PiCBuRn3r

> 1)Εγω εκανα όλα τα βήματα ως root. 
> Δεν ξερω γτ σε αυτο --->http://blog.webhosting.uk.com/2006/06/06/how-to-install-shoutcast/<--- φτιάχνει αλλον user.


Γιατί αν τον έχεις public τον server, βρεθεί κάποιο exploit και τρέχει ως root κλαύτα...
Πάρε παράδειγμα τον apache, τρέχει πάντα ως χρήστης που έχει περιορισμένα δικαιώματα...

----------


## Billaros

> Γιατί αν τον έχεις public τον server, βρεθεί κάποιο exploit και τρέχει ως root κλαύτα...


αν δε σου ειναι δυσκολο, μπορεις να γινεις λιγο πιο συγκεκριμενος;;  ::   ::

----------


## PiCBuRn3r

> Αρχική Δημοσίευση από PiCBuRn3r
> 
> Γιατί αν τον έχεις public τον server, βρεθεί κάποιο exploit και τρέχει ως root κλαύτα...
> 
> 
> αν δε σου ειναι δυσκολο, μπορεις να γινεις λιγο πιο συγκεκριμενος;;


Πόσο πιο συγκεκριμένος ?  ::  
Πχ. Τρέχεις την τάδε έκδοση ενός λογισμικού, βρίσκεται ένα κενό ασφαλείας στο λογισμικό αυτό, και επειδή τρέχει ως root (δηλαδη ο χρήστης με full δικαιώματα σε ένα linux box) μπορεί να γίνει ζημιά...

----------


## Billaros

> Πχ. Τρέχεις την τάδε έκδοση ενός λογισμικού, βρίσκεται ένα κενό ασφαλείας στο λογισμικό αυτό, και επειδή τρέχει ως root (δηλαδη ο χρήστης με full δικαιώματα σε ένα linux box) μπορεί να γίνει ζημιά...


αα οκ. αυτο εννοεις exploit. αυτο δεν ειχα καταλαβει. 
thanX  ::

----------


## mojiro

> Πάρτε έναν οδηγό για το πως κάνουμε streaming κάποια κάρτα radio-tuner ή tv tuner.
> 
> I hope it helps.


έσκισες! δε το βάζεις σε ένα τοπικ μόνο του;

----------


## zabounis

μπα άστο εκεί καταχωνιασμένο....όποιος θέλει να το βρει θα το βρει......!  ::

----------

