All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
Airtime revival: Introduce to Libretime (cloud internet radio automation) and install tutorial
Hi all!
I posted 3 years ago a tutorial on how to install airtime, a revolutionary cloud internet (and not only) radio automation system. Sourcefabric has abandoned the free, open source version of the project (reasons can be found here) and a team toop over last year and forked the project to a new, actively developed one. And it is really much better from airtime, as it now runs on modern OS and has some new features (integration with web pages etc.).
It works mainly on Ubuntu 16.04 but it should work also on debian 9, 10 and ubuntu 18.04
How to install it
It can be installed on any vps or dedicated server, even on NAT environment (I will post when I have more time instructions for NAT).
Prepare the server, secure it and install the necessary stuff (fail2ban, git, sudo, wget etc.).
Prepare the basics for the airtime installation.
Install apache2, icecast2 and postgresql
apt-get install apache2 icecast2 –y
apt install postgresql postgresql-contrib –y
set a password for the postgres user.
sudo -u postgres psql template1
ALTER USER postgres with encrypted password 'your_password';
edit the file /etc/postgresql/9.5/main/pg_hba.conf to use MD5 authentication with the postgres user
local all postgres md5
restart the PostgreSQL service
systemctl restart postgresql.service
Update locales to minimum
localectl set-locale LANG="en_US.utf8"
or
sudo locale-gen --purge en_US.UTF-8
sudo update-locale LANGUAGE="en_US.UTF-8"
Enable uploading of files by correcting folder’s properties
chmod -R 775 /srv/airtime
— Mod edit: added @jvnadr’s extra note —
A mistake from my part: use the chmod AFTER the installation of libretime server (it make sense, or else, the /srv/airtime/ folder would have not yet been created )
Comments
Copy the latest libretime release from here: https://github.com/LibreTime/libretime/releases
Untar, enter the directory and run
./install
Enter your main ip and follow the instructions to complete Libretime installation.
In the prompt, use the default libretime postgresql password. When completing the installation, change it.
Modify the db pass with the new password in the file
/etc/airtime/airtime.conf
Firewall
As the devs saying, LibreTime should only be run on a Server behind a firewall. You can run iptables. In my case, I use CSF and allowing only the ports I actually use. Open ports:
80 (webserver of the LibreTime interface) or 443 (if you use secure access).
8000 (Icecast)
8001:8002 (Master and Show source input ports for icecast2 on Libretime)
AAC encoding
If you want to stream with AAC encoding, you should run this:
download the latest version of fdk-aac from here:
http://sourceforge.net/projects/opencore-amr/files/fdk-aac/
Follow this:
apt-get install build-essential
(in case it is not installed)
Untar and enter the aac version you downloaded
And run this:
To enable AAC+ on GUI, run:
https://pastebin.com/dl/Hza1W8M6
As you have secured your postgresql, you will get a prompt for a password after an error of no access. Just enter your root postgresql password there and it will be ok.
Custom liquidsoap build
If you want to build your own liquidsoap for Libretime, you have to follow airtime’s instructions. Unfortunately, support for free airtime has abandoned and Sourcefabric has removed most free help page for that. But, Internet Archive has the instructions, so, visit this:
http://web.archive.org/web/20130906192421/https://wiki.sourcefabric.org/display/CC/Building+Liquidsoap+from+Source
More info
Manual and tutorials are here:
https://libretime.org/manual/howtos/
It is not complete, actually it is based on airtime 2.5 tutorials.
Sorry for the multiple posts, but cloudflare's rules wouldn't allow me to paste it in complete and with code in it...
Have fun!
Thanks for posting this!
Thanks for posting this! I followed your previous tutorial with Airtime and it's been working great. I'm anxious to try this out! I didn't even know this fork existed!
A mistake from my part: use this AFTER the installation of libretime server (it make sense, or else, the /srv/airtime/ folder would have not yet been created )
@jvnadr Added your “A mistake from my part: use this AFTER the...” note to the appropriate post ;-)
@doghouch
Thanks a lot!
sorry for necromancing this thread. @jvnadr how would you compare airtime with azuracast?
I have tested azuracast much less than I have worked with airtime but it is much easier to install and run. Airtime (or, I should now say libretime, the open source fork after the original developers abandoned the free project) was always a little weird in terms on functionality and web interface and it was easy to break one of their components...
Azuracast has a way more modern and easy to use interface, it is not complicated and seem like a cms interface.
Ah, and a great aspect is that it can run on a NAT vps with just 256 memory, I deployed one there and it worked.
Now that you reminded me I have not tested it a lot, i will spin a couple of instances the next days and will write a review and tutorial on LET, when I find some time!
Which is more stable in your opinion?
I tried the demo page of azuracast. there is a schedule page but not editable. i am not sure if its only playlist loop or can do airtime like schedule
thank you btw for your insight
i did not try your tutorial i was trying to install libretime earlier using deb package and running into issues. then i look at your tutorial again. it seems ok. but maybe azura is simpler
Azyra is simpler. I don;t know if it is stable, because I just did some short tests. Libretime , though, is stable.
@jvnadr thank you so much. I might just go with libretime. I have tried airtime before and a bit familiar with it.
You are awesome, thanks for the tutorial
Happy I helped! Isn't it nice that those guys forked this prioject and revive it?