Sourcefabric Manuals

 English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

Airtime 2.5 for Broadcasters

Manual installation

You do not normally need to install Airtime manually, unless you are testing a development version of the software. Versions of Airtime recommended for production use are available for download and upgrade via secure apt, as shown in the Automated installation chapter.

Dependencies provided by Sourcefabric

The http://apt.sourcefabric.org/ repository contains up-to-date Debian and Ubuntu packages of Airtime dependencies such as liquidsoap and silan which you may find convenient to install, even if you are installing Airtime manually. Refer to the chapter Automated installation for repository setup details.

Airtime requires a version of python-virtualenv later than 1.4.8, but Ubuntu Lucid includes the older version 1.4.5 of this package. Before performing a manual installation on Lucid, you should update python-virtualenv using the backported package available from the http://apt.sourcefabric.org/ repository. This step is not necessary when performing an automated installation, in which dependencies are resolved automatically.

Full install

The airtime-full-install script is designed to configure your server for you, using typical default settings.

1. In the server terminal or console, download Airtime from https://github.com/sourcefabric/Airtime/releases with wget. For example, to download version 2.5.1, you could use the command:

wget https://github.com/sourcefabric/Airtime/archive/airtime-2.5.1-ga.tar.gz

Then unzip the downloaded file in your home directory. This action will create a subdirectory called airtime-2.5.1:

tar -xvzf airtime-2.5.1-ga.tar.gz -C ~/

Alternatively, clone the git repository if you wish to work on the latest Airtime source code:

git clone https://github.com/sourcefabric/Airtime.git

In order to return your code improvements to Airtime, you will need to create your own fork of the Airtime git repository and send pull requests. See the GitHub help page https://help.github.com/articles/fork-a-repo for details.

2. Run the airtime-full-install script, for example on Ubuntu:

sudo ~/airtime-2.5.1/install_full/ubuntu/airtime-full-install

The installation script will indicate which files are being installed on your system, and the directories they are being unpacked into. Finally, it will run the airtime-check-system script to confirm that your server environment is set up correctly.

*** Verifying your system environment, running airtime-check-system ***
AIRTIME_STATUS_URL             = http://airtime.example.com:80/api/status/format/json/api_key/%%api_key%%
AIRTIME_SERVER_RESPONDING = OK
KERNEL_VERSION = 3.2.0-4-amd64
MACHINE_ARCHITECTURE = x86_64
TOTAL_MEMORY_MBYTES = 2963688
TOTAL_SWAP_MBYTES = 7812092
AIRTIME_VERSION = 2.5.1
OS = Debian GNU/Linux 7.1 (wheezy) x86_64
CPU = AMD Turion(tm) II Neo N40L Dual-Core Processor
WEB_SERVER = Apache/2.2.22 (Debian)
PLAYOUT_ENGINE_PROCESS_ID = 4446
PLAYOUT_ENGINE_RUNNING_SECONDS = 55
PLAYOUT_ENGINE_MEM_PERC = 0.5%
PLAYOUT_ENGINE_CPU_PERC = 0.4%
LIQUIDSOAP_PROCESS_ID = 4685
LIQUIDSOAP_RUNNING_SECONDS = 49
LIQUIDSOAP_MEM_PERC = 0.7%
LIQUIDSOAP_CPU_PERC = 7.4%
MEDIA_MONITOR_PROCESS_ID = 4410
MEDIA_MONITOR_RUNNING_SECONDS = 55
MEDIA_MONITOR_MEM_PERC = 0.5%
MEDIA_MONITOR_CPU_PERC = 0.0%
-- Your installation of Airtime looks OK!
************ Install Complete ************

You are now ready to proceed to the Configuration chapter.

Minimal install

The alternative airtime-install script does not attempt to configure your server, an option which you may find more suitable if you have special requirements.

1. In the server terminal or console, install the list of dependencies. For example, on Ubuntu you could enter the command:

sudo apt-get install postgresql python-virtualenv apache2 coreutils \
curl ecasound flac gzip libapache2-mod-php5 libcamomile-ocaml-data \
liquidsoap locales lsof monit mp3gain multitail patch php5-cli \
php5-curl php5-gd php5-json php5-pgsql php-apc php-pear pwgen \
python rabbitmq-server silan sudo sysv-rc tar unzip \
vorbisgain vorbis-tools libzend-framework-php

On Debian, install zendframework instead of the libzend-framework-php package.

2. Check that the Apache web server modules that Airtime requires are enabled:

sudo a2enmod php5 rewrite

The server should respond:

Module php5 already enabled
Module rewrite already enabled

3. Create a directory to contain the Airtime web interface:

sudo mkdir -p /usr/share/airtime/public

4. Next, create the Airtime virtual host configuration file for Apache:

sudo nano /etc/apache2/sites-available/airtime.conf

and enter the information below, substituting your server's hostname for airtime.example.com and your system administrator's email address for admin@example.com. Make sure you set the DocumentRoot and Directory paths correctly. This should normally match the public directory that the installer will unpack the web interface into, which by default is the /usr/share/airtime/public/ directory. From Airtime 2.3.0 onwards, the web interface can be installed in a subdirectory of the DocumentRoot if you require it to be.

For Apache 2.2, you can use the following syntax:

<VirtualHost *:80>
   ServerName airtime.example.com
   ServerAdmin admin@example.com
   DocumentRoot /usr/share/airtime/public
   php_admin_value upload_tmp_dir /tmp

  <Directory /usr/share/airtime/public>
      DirectoryIndex index.php
      AllowOverride all
      Order allow,deny
      Allow from all
  </Directory>
</VirtualHost>

Apache 2.4 uses a different access control syntax in the Directory stanza:

<VirtualHost *:80>
   ServerName airtime.example.com
   ServerAdmin admin@example.com
   DocumentRoot /usr/share/airtime/public
   php_admin_value upload_tmp_dir /tmp

  <Directory /usr/share/airtime/public>
      DirectoryIndex index.php
      AllowOverride all
      Require all granted
  </Directory>
</VirtualHost>

Press Ctrl+O to save the file, then Ctrl+X to exit the nano editor.

5. Create the PHP configuration file /etc/airtime/airtime.ini in nano:

sudo nano /etc/airtime/airtime.ini

with the following contents:

[PHP]
memory_limit = 512M
magic_quotes_gpc = Off
file_uploads = On
upload_tmp_dir = /tmp
apc.write_lock = 1
apc.slam_defense = 0

Save and exit nano, then link this file to the system's PHP configuration with the command:

sudo ln -s /etc/airtime/airtime.ini /etc/php5/conf.d/airtime.ini

6. Enable the new configuration by entering the command:

sudo a2ensite airtime

The server should respond:

Enabling site airtime.
Run '/etc/init.d/apache2 reload' to activate new configuration!

You may also need to disable the default site configuration, which may otherwise interfere with your Airtime installation:

sudo a2dissite default

As suggested by the output of the command above, reload the web server configuration.

sudo /etc/init.d/apache2 reload

The server should respond:

 * Reloading web server config apache2

7. Download Airtime from https://github.com/sourcefabric/Airtime/releases with wget, and unzip the downloaded file in your home directory. This action will create a subdirectory called airtime-2.5.1:

wget https://github.com/sourcefabric/Airtime/archive/airtime-2.5.1-ga.tar.gz
tar -xvzf airtime-2.5.1-ga.tar.gz -C ~/

Alternatively, clone the Airtime git repository as shown above.

8. Monit is a utility which Airtime uses to make sure that the system runs smoothly. Enable it by opening the /etc/default/monit file in the nano editor: 

sudo nano /etc/default/monit

Find the line that begins with START and change the value to yes:

START=yes

Save the file with Ctrl+O and close nano with Ctrl+X. Now copy the Monit configuration from the Airtime install directory to the /etc/monit/conf.d/ directory:

sudo cp ~/airtime-2.5.1/python_apps/monit/airtime-monit.cfg /etc/monit/conf.d/

Open the /etc/monit/monitrc file in nano:

sudo nano /etc/monit/monitrc

At the end of the file, add the line:

include /etc/monit/conf.d/*

Save the file with Ctrl+O and close nano with Ctrl+X. Then start Monit with:

sudo invoke-rc.d monit start

More information about monit is available in the chapter Using Monit.

9. On Debian squeeze, make sure the rabbitmq-server daemon has started:

sudo invoke-rc.d rabbitmq-server start

10. Finally, run the minimal airtime-install script: 

sudo ~/airtime-2.5.1/install_minimal/airtime-install 

Once the airtime-check-system script confirms that the install has been successful, you should now be able to log in to the Airtime administration interface, as shown in the Getting started chapter, with the username admin and the password admin. See the Configuration chapter for advanced settings.

Install script options

By default, the airtime-install script preserves any existing configuration or installation that it finds on the server. However, it is also possible to dictate the behaviour of the script with a command line option, as follows:

--help|-h            Displays usage information.
--overwrite|-o       Overwrite any existing config files.
--preserve|-p        Keep any existing config files.
--no-db|-n           Turn off database install.
--reinstall|-r       Force a fresh install of this Airtime version.

Manual uninstall

To manually uninstall Airtime from the server, run the airtime-uninstall script from the minimal installation directory, for example:

sudo ~/airtime-2.5.1/install_minimal/airtime-uninstall

Optionally, you can also delete the Airtime storage and configuration folders, if you have backups and are not going to need the data on this particular server again. The rm command should be used with caution, because it has no undo feature.

sudo rm -r /srv/airtime
sudo rm -r /etc/airtime

There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.