Install Icecast Media Streamer on Ubuntu 16.04 | 18.04

Icecast is a free personal media streamer that support popular streams like Ogg (Vorbis and Theora), Opus, WebM and MP3. You can use Icecast to create an Internet radio station or stream your media from your computer or server and provide ubiquitous access to your music anywhere over the Internet.

With Icecast, you can enjoy your music everywhere and share with family and friends with popular streaming apps available for Android, iPhone, Windows Phone and many more.

Icecast is designed to handle large music collections and optimized for MP3 streaming. It basically works with any media format that can be streamed over HTTP / HTTPS, including AAC, OGG, WMA, FLAC, APE and more.

This brief tutorial shows students and new users how to easily install Icecast on Ubuntu 16.04 | 18.04 LTS servers and desktops.

For more about Icecast, please check out its homepage.

When you’re ready, follow the steps below:

Step 1: Install Icecast

Icecast comes with support for Ubuntu out of the box. Simply run the apt-get command on Ubuntu to install Icecast packages easily with little to no configuration.

To install Icecast on Ubuntu, run the commands below:

sudo apt update
sudo apt install icecast2

During the installation, you’ll be prompted whether to install automatically with its default configurations. choose Yes and continue.

 ┌─────────────────────────┤ Configuring icecast2 ├──────────────────────────┐
 │                                                                           │ 
 │ Choose this option to set up passwords for Icecast2. Until these are      │ 
 │ configured the server will not be activated.                              │ 
 │                                                                           │ 
 │ You should not use this option if you have already manually tweaked the   │ 
 │ configuration of Icecast2.                                                │ 
 │                                                                           │ 
 │ Configure Icecast2?                                                       │ 
 │                                                                           │ 
 │                <Yes>                       <No>                           │ 
 │                                                                           │ 
 └───────────────────────────────────────────────────────────────────────────┘ 

Specify the server hostname name and continue.

  ┌────────────────────────┤ Configuring icecast2 ├─────────────────────────┐
  │ Please specify the fully qualified domain name that should be used as   │ 
  │ prefix to all streams.                                                  │ 
  │                                                                         │ 
  │ Icecast2 hostname:                                                      │ 
  │                                                                         │ 
  │ localhost______________________________________________________________ │ 
  │                                                                         │ 
  │                         <Ok>                                            │ 
  │                                                                         │ 
  └─────────────────────────────────────────────────────────────────────────┘ 
                                                                              

After that, type in the user and superadmin password to access the backend.

Once Icecast is installed, you can run the commands below to start and enable Icecast service to always start up when the server boots up.

sudo systemctl start icecast2
sudo systemctl enable icecast2

To check the service status, run the commands below

systemctl status icecast2

You should see similar lines as below:

● icecast2.service - LSB: Icecast2 streaming media server
   Loaded: loaded (/etc/init.d/icecast2; generated)
   Active: active (running) since Tue 2019-04-02 10:37:10 CDT; 1min 44s ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 4 (limit: 4683)
   CGroup: /system.slice/icecast2.service
           └─2224 /usr/bin/icecast2 -b -c /etc/icecast2/icecast.xml

Apr 02 10:37:10 ubuntu1804 systemd[1]: Starting LSB: Icecast2 streaming media server.
Apr 02 10:37:10 ubuntu1804 icecast2[2219]:  * Starting streaming media server icecast2
Apr 02 10:37:10 ubuntu1804 icecast2[2219]: [2019-04-02  10:37:10] WARN CONFIG/_parse_root Warning,

Finally, open your browser and browse to the server name or IP address followed by port 8000

You should see Icecast default page.

Icecast ubuntu install

If you want to configure Icecast, open its configuration file by running the commands below:

sudo nano /etc/icecast2/icecast.xml

Then make your changes and save. For example, to change the default port, update the highlighted port and save.

<hostname>localhost</hostname>
<!-- You may have multiple <listener> elements -->
<listen-socket>
<port>8000</port>
<!-- <bind-address>127.0.0.1</bind-address> -->
<!-- <shoutcast-mount>/stream</shoutcast-mount> -->
</listen-socket>

The default username is admin. and the password is what you type when installing Icecast.

By default the Icecast process is run as the root user. To improve security it is strongly advised that you run it as a dedicated user with less powerful privileges. You can specify this user by setting the changeowner in the security section of the configuration file /etc/icecast2/icecast.xml.

Once Icecast Server correctly, use any of the compatible Icecast Clients or source client to transmit audio to Icecast Server and to all the listeners.

Is list of compatible client can be found here..

For more about setting up Icecast, visit its documentation page.

Enjoy!

You may also like the post below: