Icecast Streaming Media Server, Basic Installation on Ubuntu 18.04

about icecast on Ubuntu

In the next article we are going to take a look at Icecast. This is a Free personal media streamer (audio and video) that supports popular streams like Ogg, Opus, WebM and MP3. Users can use Icecast to create an Internet radio station or stream our media from the user's computer or server and be able to provide access from anywhere through the Internet. It is very versatile as new formats can be added relatively easily and are compatible with open standards for communication and interaction. Icecast is distributed under the GNU GPL, version 2.

With Icecast, anyone can enjoy their music from anywhere. In addition you can share with family and friends using available applications that can be found for Android, iPhone, Windows Phone, and many more.

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

about media server
Related article:
Media server, some good options for our Ubuntu

In the following lines we are going to see how we can install Icecast on Ubuntu servers and desktops. For this example I am going to use Ubuntu 18.04 LTS. It can get more detailed information about Icecast, visiting the project website.

Install Icecast on Ubuntu 18.04

Icecast comes with Ubuntu support, ready to install and use. All you have to do is open a terminal (Ctrl + Alt + T) and run the following commands to install the Icecast packages easily.

First we are going to update the packages available for our system by typing:

sudo apt update

After this we can run the installation typing in the same terminal:

Icecast2 installation

sudo apt install icecast2

During the installation, we will see that the console will ask us if we want set up Icecast2 passwords. If you want to configure them manually, you should choose «No«. To make it easy, we are going to choose «Si»And we will start the configuration.

configure icecast2

We continue specifying the hostname for the server. In this case I will use "localhost”. To continue, just click on «Accept«.

icecast2 localhost configuration

After this, it will be necessary write passwords for administration, repeater and user to access the backend. It is important not to forget these passwords.

icecast management configuration

Once the Icecast installation is finished, we will be able to execute the commands shown below to start and enable the Icecast service. With this, we want it to start when the server starts.

sudo systemctl start icecast2

sudo systemctl enable icecast2

We will be able check service status, executing the following command in the same terminal:

systemctl status icecast2

The terminal should show us lines similar to the following:

Service status

Finally, we only have open our favorite web browser and write the server name as URL or the IP address followed by port 8000:

http://localhost:8000/

The default username to access is admin. The password we are going to need is the same one we wrote when we were installing Icecast. After logging in, this should take us to see the default Icecast page:

web management of this media streamer

Configuration

If you want to configure Icecast, open your config file executing the following command:

change port and domain

sudo vi /etc/icecast2/icecast.xml

When you see the file, make the appropriate changes. For example, to change the default port, modify the port highlighted in the above screenshot. Then save and close the file.

By default, the process runs as root user. To improve security, it is strongly recommended to run as a dedicated user with less powerful privileges. You can specify this user by setting the owner in the security section of the configuration file called /etc/icecast2/icecast.xml.

Once everything is properly installed and configured, you will be able to use any of the supported Icecast Clients or the source client to stream audio to the server and all listeners. Here you will find the list of supported clients.

To get more information about Icecast settings, you can visit your documentation page.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Ignacio said

    My estimate in the last part explains the icecast configuration, I enter with the command sudo vi /etc/icecast2/icecast.xml, but when making the changes it does not save me, how do I save the changes please, I do not know what I am failing in ...

    1.    Damien A. said

      Hello. in command mode, with: wq does not save the changes?

      1.    Ignacio said

        If so, what happens is that I am new to Linux, thank you very much for your time ...

        1.    Damien A. said

          I'm glad you solved. A pleasure, salu2.

  2.   Jose said

    My goal is to have a server for my online radio station, and as the maximum number of listeners is no more than twenty and I have a bandwidth of 100 megabytes, without having any z ...
    But first to know if it is possible ...
    Can I mount a Xubuntu server on an old computer with two gigs of Ram?
    The steps are the same as for Ubuntu?
    Will it support twenty listeners?
    Thanks in advance and suggestions welcome

  3.   Jose said

    when I do the test, the terminal responds: Unit icecast2.service could not found
    linux...
    You follow the instructions of one, and since it does not work, you have to find another, it is the usual in linux. I repeat, I do not complain about the crap, I have chosen it, but it exasperates me that they tell me wonders of this

    1.    Damien A. said

      Hello. When you test the status of the service with systemctl status icecast2, what does the terminal show you?