RadioMaster logoRadioMaster Download

RadioMaster Server

Headless radio automation for Linux and Windows Server

RadioMaster Server is RadioMaster without a window. It runs your station 24/7 on a Linux box, a VPS or Windows Server: it plays the playlists, runs the scheduler, adverts and jingles, and streams to Icecast and Shoutcast on its own. Presenters run it from the free RadioMaster desktop app with File → Connect to Server. Like the desktop app it is free and open source under the MIT licence.

What it does

Your station, always on air

Automation

Plays on its own

The same playout as the desktop app: playlist tabs, hour markers, crossfades, the playlist generator and the event scheduler, with nobody logged in.

Streaming

Icecast and Shoutcast

The server's encoders stream to Icecast 2, Shoutcast 2 and AzuraCast DJ ports, in MP3, AAC, Opus, Ogg Vorbis or FLAC.

Sound cards

Or play out loud

Play through the server's own sound cards into a desk or an FM transmitter, or stream only. With no sound card it runs on a silent clock.

Remote studio

Run it from the app

Connect from the desktop app and everything you do happens on the server: playlists, play/stop/next, carts, encoders, scheduler, adverts and settings.

Team

Several presenters

More than one app can be connected at once. Your own local session is saved as a profile and comes back exactly when you disconnect.

Service

Starts at boot

A systemd unit for Linux is in the package. On Windows Server, start it at boot with Task Scheduler or a service wrapper.

Web portal

Run it from a phone

Turn on the web portal and run the station from any browser: what's on air, transport buttons, volume, playlists, streams and the log.

HTTPS

Encrypted end to end

Use your own certificate (Let's Encrypt works) or let the server make one, which the app checks by its fingerprint.

Remote

Broadcast from anywhere

Present from home with the desktop app: your microphone goes to the server and on air, and you hear the station's mix. How it works

Set it up

Install RadioMaster Server in three steps

  1. Download the Linux tar.gz or Windows zip from the latest release and unpack it. On Linux it needs libasound2 (ALSA), which nearly every distribution has.
  2. Run the setup once. It asks for the station name, the username and password the desktop apps sign in with (at least 12 characters), the port (9259 unless you choose another), and whether to use HTTPS and the web portal.
    RadioMaster-Server --setup
    Without a terminal, for example in a script or a container, give the answers as options; the password can come from the RADIOMASTER_PASSWORD environment variable.
    RADIOMASTER_PASSWORD='a long password' RadioMaster-Server --setup --user studio --name "My Station"
  3. Start it with RadioMaster-Server. The station log goes to the console, and Ctrl+C (or stopping the service) saves everything and stops the encoders.

Options

OptionWhat it does
--setupSet the station name, username, password and port, then exit
--user, --password, --nameAnswers for --setup
--port N, --bind ADDRESSWhere to listen (default 0.0.0.0:9259)
--https, --cert FILE, --key FILEServe over HTTPS, with your own certificate or one the server makes
--portal, --portal-port NThe web portal and its port (default 9260)
--data FOLDERThe data folder (default ~/.config/RadioMaster-Server, or %APPDATA%\RadioMaster-Server on Windows)
--no-audioDon't use a sound card: stream only
--list-devicesList the sound cards

Run it as a service

Linux (systemd): the package includes radiomaster-server.service, with the steps at the top of the file. journalctl -u radiomaster-server -f shows the station log.

Windows Server: run RadioMaster-Server.exe --setup once in a console, then start it at boot, for example with Task Scheduler (At startup, Run whether user is logged on or not) or a service wrapper such as NSSM. Allow the port through Windows Firewall.

Move an existing station to the server

The server keeps its own data folder, so it never mixes with a desktop RadioMaster on the same machine. Copy config.json, playlists.json, library.json, cues.json and plays.json from the desktop's data folder into the server's, then fix any music folder paths.

Connect from the desktop app

  1. In RadioMaster, choose File → Connect to Server… and type the server's address (for example 192.168.1.20:9259), the username and the password.
  2. RadioMaster asks whether to save your local session as a station profile, so your own playlists and settings come back when you disconnect.
  3. While connected, a green button with the station's name sits next to the RadioMaster logo. Click it for the details or to disconnect. File → Server settings… changes the station name, sound output, autoplay and password.

Music files, folders and the library are the server's, so a library folder is typed as the server sees it (for example /srv/music). Previews, waveforms in the fade editor and the microphone need the files on your own computer and don't work while connected.

Security

The password is checked with Argon2 and only its hash is stored. Sign-ins expire after a day without use, and repeated wrong passwords are slowed down. Whoever signs in can do everything the station can, so use a strong password and run the server under its own unprivileged account (the systemd unit does). On a network you don't trust, or over the internet, turn on HTTPS (--https) with your own certificate or one the server makes, or put it behind an HTTPS reverse proxy or a VPN.

Everything else

The RadioMaster Server documentation covers every option, the data folder, HTTPS with Let's Encrypt, the web portal, nginx, Caddy and IIS reverse proxies, sound output and troubleshooting.

Download

Get RadioMaster Server

Free and open source. Both downloads are on the GitHub releases page, next to the desktop app.

Linux

RadioMaster-Server-<version>-linux-x64.tar.gz

The server, the guide and a systemd unit. Runs on any x64 distribution with ALSA.

Windows Server

RadioMaster-Server-<version>-windows-x64.zip

RadioMaster-Server.exe and the guide, for Windows Server or any 64-bit Windows.

Desktop app

The studio app for Windows, macOS and Linux, which also connects to the server.