Internet radio linux server

How to Install SHOUTCast Radio Server (Online Media Streaming) on Linux

SHOUTcast is proprietary software used to stream media over the Internet, especially used in music live streaming by the radio stations on Internet, and is developed by Nullsoft with versions for all major platforms, including Linux.

This tutorial will guide you on how you can install The SHOUTcast Distributed Network Audio Server in CentOS 8, with the help of which you can use media players, like Winamp or Mixxx to connect to the streaming services and broadcast your audio playlists to Internet listeners.

Although this tutorial only covers SHOUTcast server installation on a CentOS 8/7 machine, the same procedure can be applied to other Linux distributions such as RHEL, Fedora, Ubuntu, Debian, Linux Mint, etc. with the remark that you must adapt firewall commands to suit your Linux distribution.

Step 1: Download and Install SHOUTcast Server

1. Before proceeding with the installation of the SHOUTcast server, create a local user from which you will run the server because running the server from the root account can impose serious security issues on your system.

So, log in on your system with the root account, create a new user, called radio, after you’re done log out from the root account, and, then, login with your newly created user. Here are the following required commands that need to be executed on the terminal.

# adduser radio # passwd radio # su - radio $ pwd

Create New User in Linux

2. Once logged in on your system with the radio account, create two directories named download and server, then switch to download folder.

$ mkdir download $ mkdir server # cd download

3. Next, grab the last version of the SHOUTcast server archive for Linux, depending on your system architecture, by visiting the official Nullsot Download page.

Alternatively, use the following wget utility to download the archive from the command line.

--------------- On 64-bit --------------- $ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_x64-latest.tar.gz --------------- On 32-bit --------------- $ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux-latest.tar.gz

Download Shoutcast Server

4. After the download completes, extract the archive file, list the directory to locate the sc_serv executable binary file, and copy it to the installation directory, located in the server folder, then move to the SHOUTcast installation path, by issuing the following commands.

$ tar xfz sc_serv2_linux_x64-latest.tar.gz $ ls $ cp sc_serv ../server/ $ cd ../server/ $ ls

Extract Shoutcast Archive

5. Now that you are located in the server installation path, create two directories named control and logs and you’re done with the actual installation process. List your directory content to verify if everything is in place using ls command.

$ mkdir control $ mkdir logs $ ls

Confirm Shoutcast Files

Step 2: Create a SHOUTcast Configuration File

6. In order to run and operate the server, you need to create a configuration file for SHOUTcast. Open your favorite text editor and create a new file, named sc_serv.conf.

Читайте также:  Kali linux человек посередине

Make sure that this file is created in the same path as your sc_serv e executable binary files are created. Using pwd command should show you this absolute path – /home/radio/server).

$ cd /home/radio/server/ $ pwd $ vi sc_serv.conf

Create Shoutcast Configuration File

Add the following statements to sc_serv.conf file (example configuration).

adminpassword=password password=password1 requirestreamconfigs=1 streamadminpassword_1=password2 streamid_1=1 streampassword_1=password3 streampath_1=http://radio-server.lan:8000 logfile=logs/sc_serv.log w3clog=logs/sc_w3c.log banfile=control/sc_serv.ban ripfile=control/sc_serv.rip

Some important settings that you should be aware of this file are password statements, which you must be changed accordingly:

  • adminpassword – Admin password required to perform remote administration via the web interface to the server.
  • streampassword_1 – Password required by the remote media player to connect and stream media content to the server.

Alternatively, if you want to create a configuration file for the SHOUTcast server you can go to download directory and run builder.sh or setup.sh scripts.

$ cd ../download/ $ bash setup.sh

which will let you configure the server from a web interface that can be accessed from the following address.

http://localhost:8000 OR http://ipaddress:8000

Shoutcast DNAS Setup

Once the configuration is created you can copy it to the server installation directory.

7. To start the server execute sc_serv the file from your current working directory, which must be the server directory, put it on background with & bash operator, and direct your browser to http://localhost-or-IP:8000 URL.

Also, use netstat command to see if the server is running and on what port numbers it listens.

$ chmod +x sc_serv $ ./sc_serv & $ netstat -tulpn | grep sc_serv

Check Shoutcast Server Ports

Step 3: Open Firewall Connections

8. Now the SHOUTcast server is up and running but it can’t be accessed yet from the outside world due to CentOS Firewall restrictions. To open the server to external connections login with root account and add the rule that will open port 8000 TCP.

After the rule has been added reload the Firewall to apply changes and logout from your root account.

$ su - # firewall-cmd --add-port=8000/tcp --permanent # firewall-cmd --reload # exit

9. Then open a browser from a remote machine and type your server IP Address on port 8000 on URL filed – http://192.168.1.80:8000 – and the SHOUTcast web interface should appear like in the screenshot below, with no live streams available.

Читайте также:  Alt linux перезапуск samba

Shoutcast Server Summary

Step 4: Manage SHOUTcast Server and Create Daemon script

10. The command used to manage the SHOUTcast radio server is the binary file itself, which must be run from its installation path location in order to be
able to read the configuration file. To run the server as a daemon using the daemon command option.

You can also instruct the server to read its configurations from a different location by indicating where the configuration file resides, but be advised that using this option requires the creation of logs and control directories, which can be confusing in practice and can lead to server inability to start.

$ pwd ## Assure that you are in the right installation directory - /home/radio/server $ ./sc_serv ## Start the server in foreground – Hit Ctrl + c to stop $ ./sc_serv daemon ## Start the server as a daemon $ ps aux | grep sc_serv ## Get Server PID $ killall sc_serv ## Stop server daemon

11. If you need a simplified command to start or stop SHOUTcast radio server, log in as root again and create the following executable script on /usr/local/bin/ path as in the example below.

Now add the following excerpt to the radio file.

#!/bin/bash case $1 in start) cd /home/radio/server/ ./sc_serv & ;; stop) killall sc_serv ;; start_daemon) cd /home/radio/server/ ./sc_serv daemon ;; *) echo "Usage radio start|stop" ;; esac

Create Shoutcast Execute File

12. After the file was created, make it executable, exit root account, and a new command shout be available for your SHOUTcast radio server management.

# chmod +x /usr/local/bin/radio # exit

13. To manage the server from now on, use radio command with the following switches.

$ radio start_daemon ## Starts SHOUTcast server as a daemon $ radio start ## Starts SHOUTcast server in foreground $ radio stop ## Stops SHOUTcast server

Start Shoutcast Server

14. If you want to automatically start the server after reboot, but only on user login (in this case the server was installed on the local user named radio) issue the following command from radio account home path, then logout and login again to verify the functionality, as presented in the screenshot below.

$ whoami $ echo “radio start_daemon” >> ~/.bashrc

Start Shoutcast at Reboot

That’s it! Now, the SHOUTcast server is ready to receive sound or playlists from remote media players such as Winamp from Windows and Mixxx from Linux and broadcast all of the received audio content over the Internet.

Источник

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Читайте также:  Radeon control center linux

How to create Internet Radio using Icecast2, Ices and B.U.T.T

kalyanramswamy/Internet-Radio

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Internet radio (also web radio, net radio, streaming radio, e-radio, IP radio, online radio) is a digital audio service transmitted via the Internet. Broadcasting on the Internet is usually referred to as webcasting since it is not transmitted broadly through wireless means. It can either be used as a stand-alone device running through the Internet, or as a software running through a single computer system(more..)

In this guide, we are focussing on open source applications so that anyone with minimum Linux knowledge can create Internet Radio free of cost.

Software Requirement to start Internet Radio

Icecast is a streaming media server which currently supports Ogg Vorbis and MP3 audio streams. It can be used to create an Internet radio station or a privately running jukebox and many things in between(more..)

To stream list of songs to Icecast server(more..)
Ices-0.4 support Mp3 format.
Ices2 only support Ogg Vorbis format.

3. B.U.T.T(Broadcast using this tool)

Butt is to stream live audio data from your computer’s Mic or Line input to an Icecast server(more..)

Note: Icecast and Ices requires either Linux or Windows.

Before installing ices make sure your system satisfies these requirements-
libmp3lame-dev, libxml2-dev, libshout-dev, libvorbis-dev
> apt-get install libmp3lame-dev libxml2-dev libshout-dev libvorbis-dev

then download ices-0.4.tar.gz from http://icecast.org/ices/ and make to install

cd /tmp/ wget http://downloads.us.xiph.org/releases/ices/ices-0.4.tar.gz tar xf ices-0.4.tar.gz cd ices-0.4/ ./configure --prefix=/usr/local --with-pic --with-lame make make install mkdir /etc/ices cp /usr/local/etc/ices.conf.dist /etc/ices/ices.conf 

to verify installation of Ices from the terminal —
> ices —version

B.U.T.T(broadcast using this tool)

download Source Code (tar.gz) from https://danielnoethen.de/ and make to install

tar -xzf butt-*.tar.gz cd butt-* ./configure make sudo make install 

to verify installation of B.U.T.T —
> butt

About

How to create Internet Radio using Icecast2, Ices and B.U.T.T

Источник

Оцените статью
Adblock
detector