Audio streaming: Radio station with GNU Linux

As you know, for years they have been broadcast on Internet podcasts, that is, the distribution of audio files over the network to create our own playlists or radio “channel” so that other users can listen to it. Well, if you want to distribute streaming audio over your local network or over the Internet for other users. But first you should know what is Streaming?

Streaming Server

It is the technical process to transmit radio online consists of connecting from a computer (or cell phone) to a streaming server to which the audio signal is sent. Those who want to listen to us will connect to that server that will send them the audio through a player that you place on your website or blog.

There are many commercial platforms that offer the free streaming service. They are companies that try to attract customers by giving away freemium plans and then try to sell them the premium package. However, they are a good alternative to start with.

GNU Linux in Streaming

Linux has managed to adapt well to the streaming business. Because Linux has turned out to be quite a case of cuteness, since it has adapted to the different needs of users around the world, and today it is the operating system that can offer a base platform for video games, streaming and many more functions.

Also, it has become a friendly platform for users to create their own radio stations and playlists, and although there are several programs.

Here we will mention the programs you need for Linux with which you can do this in a simple, professional way and enjoying spreading the audio as you like. Of course, you must have a good bandwidth and the software that we present here installed on your system. Although there are more alternatives, these are the packages that we recommend, download and install them, and you can start enjoying the broadcast.

Among the programs you need, I recommend IceCast, because it does not take up much space with 2MB, and you can install it, in addition there are also packages such as EZStream, of which it will only occupy a few Kbs, and if I mention libraries such as libshout, libvorbis and libogg which occupy a few Kbs each of the packages mentioned. Therefore, they are not heavy packages, much less, it is simple software. Once downloaded and installed, you can configure the file using this line of code, /usr/local/etc/icecast.xml for services. And after following a few simple steps, which you can find in various tutorials on the net … you can start using everything.

If you don’t like IceCast, you can choose other alternatives. As Gnump3 is, it is another alternative to IceCast, but if you prefer web-based services, you have projects such as Ampache and Subsonic (or their Libresonic fork), all of them available for various platforms, including GNU Linux and with capabilities to distribute, stream audio and share it with your friends or cyber followers. As I already mentioned, none of the packages takes up much space, since it is a simple software. Source:

Use your own player

If your business is personal or commercial, we recommend any of the commercial services in the first table, but not these. These accounts have a community and social objective, and they require a great voluntary economic and human effort to be maintained, so it is better that they are destined for organizations that really need them. Here you have a broader comparison on these streaming services.

Software you need

Once you have registered on any of these platforms, you will receive the server access data to start the transmission: an IP address and a port; a password, if it is Shoutcast (proprietary software); and, in addition, a mount point and a user if it is Icecast (free software).

To connect to that streaming server and send the audio to it, you need a “transmitter”. In this case, it is software that takes what is playing on the sound card, encodes it and sends it to the server. We recommend Butt, it is free, easy to use, cross-platform – it has versions for Windows, macOS and GNU Linux – and free, although the developer accepts donations.

Another recommended program is Mixxx, a DJ-type player with which you can directly send the streaming without the need for other software. If you want to automate programming, we recommend G-Radio (only available for GNU / Linux) which also connects directly to your streaming server. If you use the free distribution for community radios GNU / Linux EterTICs, all these programs are already pre-installed.

And to stream from Android cell phones, we recommend Cool Mic. [Here’s a table with more software to stream online].

After installing any of these programs, you must configure it with the data that the service provider has sent you.

Configure the audio card and software

This step will depend a lot on the computers and the operating system you are using. But you must tell the transmission software which signal to transmit, and for that they need to make some settings on the sound card.

If you only have one computer, and you want to mix the music and the voice you will need to configure the card and tell Butt to take the signal from the “Audio Monitor” (in Windows it was “Stereo Mix”, perhaps in the latest versions it has changed, you will have to search on the Internet how to do it since we do not work proprietary operating systems).

To optimize the sound configuration and get the most out of it in GNU / Linux you can use Jack, a powerful engine to manage the audio. Our colleagues from the Community Radio Network and Free Software Pablo López and Luis Salazar explain in these tutorials “How to set up a traditional and online radio with or without a console in EterTICs GNU / Linux” and “Configure JACK and perform Streaming with Butt in GnuEterTics ”.

Once we have the sound card configured, we start broadcasting.

Player to be heard

For the audience to connect to your radio, you can always offer them the streaming URL, made up of the IP: port / mounting_point. When you open it in any browser, they will automatically listen to the radio.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.