Code-Outlet von Andreas Bahr, Zürich
Try yourself: volx-empfaenger.supersaft.ch
In Switzerland, Germany & Austria, almost all Long-, Medium- and Shortwave-Radiostations are offline. I am missing some of my favorite Radio-Stations on the air, and i don't like the existing webradio & aggregators, so i decided to roll my own.
After using an earlier version of this software for some years on Android mobiles and Linux-Desktops, i can say that audio streaming in HTML5 works quite reliable. I had the best experience with Chrome/Chromium. Firefox works also well but sometime loses the stream, you can however restart it by simply pushing the stations button again. Also, the support of different codecs depends on the browser and the operating-system.
Because the radio-stations typically only offer 1 or 2 types of encodings, and computers and mobiles don't support every codec properly, i feed urls for different codecs into the database for every station, and let the browser decide which one to use. In case this does'nt work, i can switch manually between streams.
The system can be run on any type of webspace, your own webserver, a NAS in your local network or even your laptop with a desktop-webserver. It can serve many clients at the same time, so it may also be useful for companies or community-use.
The Frontend connects to the Station Catalog Database on the webserver through a REST-API written in PHP.
The Editor is a simple PHP-based editor for the station & stream data which is stored in a MySQL-database. For each station, multiple stream-url can be defined, to give access to different codecs and bitrates. When the radio requests data, it gets stream-urls which matches the browsers audio-capabilities.
The system is based on the LAMP-Stack. The download below gives you access to the raw scripts. You need to setup a database based on the script in /db, and create a website containing the scripts in /www. Finally you adjust the 2 configuration-textfiles in [your-webroot]/config to your needs. See readme.txt for details about this.
When you install the software on a public webserver, i recommend to protect your setup with folder-based access-control. Otherwise, anyone can edit your database. You can install a "Radio-only"-version of this software with read-only access-rights for public use, see below.
You can install a radio-client on a different folder/server, or run multiple clients on the same or a different database. It only needs read-access for the database and the station-logo folder.
Version: Dec. 19, 2020