Comments on How To Install A Streaming Audio Server With Icecast 2.3.3 On CentOS 6.3 x86_64 Linux

How To Install A Streaming Audio Server With Icecast 2.3.3 On CentOS 6.3 x86_64 Linux This tutorial explains creating your own streaming audio server with Icecast (OGG/MP3). Icecast was designed to stream any audio file if a appropiate streaming client is available. For OGG/Vorbis you can use ices and for MP3 icegenerator. Here is a small tutorial how to set up Icecast for streaming OGG/Vorbis and MP3.

22 Comment(s)

Add comment

Please register in our forum first to comment.

Comments

By: Anonymous

make

make install

on RPM based distro its very bad idea.

search icecast http://pkgs.org/search/?keyword=icecast and install rpm 

By: TBR

Please note that compiling Icecast from source is largely unnecessary. Most distributions carry an Icecast package, also in the case of RHEL/CentOS. It's called EPEL:

 http://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F

By: Cristian Rodriguez

How can i restart icecast in this case if it is not a service

By: Anonymous

su - icecast -c "/usr/local/bin/icegenerator -f /usr/local/etc/icegen1.cfg" Source drops when using this: su - icecast -c "export LD_LIBRARY_PATH=/opt/icecast/latest/lib:$LD_LIBRARY_PATH; /usr/local/bin/icegenerator -f /usr/local/etc/icegen1.cfg"

By: Diable

How to make that icegenerator run forever ?

I ask that because for me it stops after some times.

By: Paul

Does anybody know if its possible to reload icegenerator with a new playlist?

I do not want to restart icegenerator so the stream would stop.

Thanks in advance.

Paul

By:

A couple of install notes:

icecast2 is now 2.4.0

rpmforge is now 0.5.3.1

 
This is by far the most cleanest guide for getting icecast started. Thank you very much!!
 
 

 

 

By: Diego

It's a very nice guide, thank you!

 But its missing something very important!

How to starts icecast when system power up, and how to start icegen (for mp3 stream) too.

It's simple and usefull. So let's go.

 1) Create a init script:
nano /etc/init.d/icecast

2) Paste the code: http://downs.animesrox.com.br/icecast.txt

3) Set permission to init.d icecast file:
chmod +x /etc/init.d/icecast

4) Set permission to root (or another user - change the root) to use the command:
gpasswd -a root icecast

5) Check icecast status:
service icecast status
PS: This check only icecast, not icegen. But if you use start, stop or restart the command will works with icegen too.

Done!

Check icecast is running:
service icecast status

Start icecast and icegenerator:
service icecast start

Stop icecast and icegenerator:
service icecast stop

Restart icecast and icegenerator:
service icecast restart

I hope that it's usefull for you!

By:

I've added another usefull simple command to upload your playlist with all mp3s in one folder:

1) Upgrade your /etc/init.d/icecast for the new @ http://downs.animesrox.com.br/icecast.txt

2) Change mp3's dir to yours in the line: MP3DIR=/home/mp3s/

3) Now just upload the mp3s to your server and use the command to update the mp3playlist:
service icecast reload

PS: This will stop your icecast service, upload the playlist and starts again. So it will take your station down for a short time.

By: Alex Hughes

If anyone has a problem configurating icegenerator (I had) just try adding the following params in the ./configure command: ./configure --with-shout=/opt/icecast/latest/ Other than that, perfect and clean guide.

By: OMG

I have the biggest migraine headache from reading this.

By: Anonymous

Hi.

It was all going well till I unwittingly installed the OGG/Vorbis streaming client: ices.  Now I want to remove everything I have done in this tutorial and start over.  Any suggestions?

By: kaburu

I have followed this tutorial well but now my stream has no sound. It is showing the progress of the song on clients but no sound

By: Jeff

Are there any good instructions for setting up Icecast to use port 80, (securuty settings, etc)?  I've found some for Debian but nothing for CentOS

By: Leo

June, 1 2016

Installed icecast 2.4.3 using this guide and got the icecast server to run according to the "pgrep -fl icecast" command. Unfortunately I cannot reach the icecast webgui from either the domain url:8000/admin/ or the IP:8000/admin/ .

What gives?

By: Paul

This (init / stop / reload) script code runs on CentOS 6.5 x86_64 (the executable paths and configuration file have been modified for this particular manual)

[code]

 

#!/bin/bash # # icecast      This shell script takes care of starting and stopping #              the icecast multimedia streaming systen. # # chkconfig: - 85 15 # description: icecast is a multimedia streaming daemon. It is used to \ #              relay and offer multimedia streaming content. # processname: icecast # pidfile: /var/run/icecast/icecast.pid # config: /opt/icecast/latest/etc/icecast.xml

 # Source function library. . /etc/rc.d/init.d/functions [ -x /opt/icecast/latest/bin/icecast ] || exit 0

 # See how we were called. case "$1" in   start)         # Start daemon.         echo -n $"Iniciando icecast: "         daemon "/opt/icecast/latest/bin/icecast -c  /opt/icecast/latest/etc/icecast.xml -b > /dev/null"         RETVAL=$?         echo         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/icecast         ;;   stop)         # Stop daemon.         echo -n $"Deteniendo icecast: "         killproc icecast         RETVAL=$?         echo         [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/icecast         ;;   status)         status icecast         RETVAL=$?         ;;   restart)         $0 stop         $0 start         ;;   reload)         echo -n $"Reiniciando icecast: "         killproc icecast -HUP         RETVAL=$?         echo         ;;   condrestart)         [ -f /var/lock/subsys/icecast ] && restart || :         ;;   *)         echo $"Use: $0 {start|stop|status|restart|reload}"         RETVAL=1         ;; esac exit $RETVAL

[/code]

By: Thomas

Hello, with this line :

<hostname>MyHost/IP</hostname>I receive when starting icecast with: /opt/icecast/latest/bin/icecast -c /opt/icecast/latest/etc/icecast.xml -bthe output is:" /opt/icecast/latest/etc/icecast.xml:22: parser error : Opening and ending tag mismatch: hostname line 22 and unparseable <hostname>MyHost/IP</127.0.0.1> ^FATAL: error parsing config file (/opt/icecast/latest/etc/icecast.xml)XML config parsing error"Can someone hulp please, I've googled more than a day, changing the 127.0.0.1 with the server name or the site name did not help.BTW, thank you for the tuto.Thomas

By: Gaurav

Can anyone advise "How to play default audio (preferred mp3) if source shuts down". I basically want to play default audio after radio station closed.

By: Sheera khan

Thank you for this great installation guide. Installing Icecast-2.4.3 on CentOS7-1804 gave me some issues:

- a warning about /etc/mime.types missing -> # yum install -y mailcap

- <location> not configured, ... -> adding "<location>Spacestation</location>" to section GENERIC of icecast.xml

- <admin> contact not configured, ... -> adding "<admin>[email protected]</admin>" to section GENERIC of icecast.xml

Best regards - Sheera

By: Bodakks

HI, I am in teh command line trying to enter ./configure --prefix=/opt/icecast/2.4.3 and am getting the error message "permission Denied".  um.. why?  DO I need to set up a new passwrod for the configure file itself also?

Thanks

By: Daniel

Use sudo :D

By: lukas

anybody suceeded compiling icegenerator on ubuntu? because no matter what i do, i always get these errors.

on centos/fedora it is working fine.. 

but i need to compile it on ubuntu. can anybody help?

 

streamer.cpp:(.text+0x167): undefined reference to `shout_set_format'

streamer.cpp:(.text+0x175): undefined reference to `shout_get_errno'

streamer.cpp:(.text+0x1a5): undefined reference to `shout_set_user'

streamer.cpp:(.text+0x1c5): undefined reference to `shout_set_dumpfile'

streamer.cpp:(.text+0x1f3): undefined reference to `shout_set_public'

streamer.cpp:(.text+0x21c): undefined reference to `shout_set_audio_info'

streamer.cpp:(.text+0x23d): undefined reference to `shout_set_url'

streamer.cpp:(.text+0x265): undefined reference to `shout_set_description'

streamer.cpp:(.text+0x285): undefined reference to `shout_set_genre'

streamer.cpp:(.text+0x2a5): undefined reference to `shout_set_name'

streamer.cpp:(.text+0x2e5): undefined reference to `shout_set_protocol'

streamer.cpp:(.text+0x305): undefined reference to `shout_set_password'

streamer.cpp:(.text+0x325): undefined reference to `shout_set_mount'

streamer.cpp:(.text+0x354): undefined reference to `shout_set_port'

streamer.cpp:(.text+0x372): undefined reference to `shout_set_host'

streamer.cpp:(.text+0x385): undefined reference to `shout_get_errno'

streamer.cpp:(.text+0x427): undefined reference to `shout_set_format'

streamer.cpp:(.text+0x43a): undefined reference to `shout_set_protocol'

streamer.cpp:(.text+0x448): undefined reference to `shout_get_error'