Skip to content
Snippets Groups Projects

AURA Engine

This piece of Software is part of 'AURA - AUtomated RAdio'.

AURA Engine does:

  • requesting the programme from an external Source
  • switches the soundserver at the correct time to a given source for a specific show
  • records what is broadcasted

Installation

Software

Operating System

Any sound supporting linux system should work. It is tested and coded on a debian stretch

Packages

On a debian machine:

sudo apt install git \
    python3 python3-pip \ 
    liquidsoap liquidsoap-plugin-alsa liquidsoap-plugin-ao liquidsoap-plugin-faad \ 
    liquidsoap-plugin-flac liquidsoap-plugin-icecast liquidsoap-plugin-lame \
    liquidsoap-plugin-mad liquidsoap-plugin-ogg liquidsoap-plugin-pulseaudio \
    liquidsoap-plugin-samplerate liquidsoap-plugin-taglib liquidsoap-plugin-voaacenc \
    liquidsoap-plugin-vorbis

Python Packages

sudo pip3 install Flask Flask-Babel flask-babel-utclocal-utils \
    flask-mongoengine Flask-RESTful Flask-SQLAlchemy Flask-WTF \
    mysqlclient redis simplejson

aura.py

It is the server which is connected to the external programme source, to liquidsoap and is listening for redis pubsub messages.

Guru

The commandline tool for interacting with the server.

Liquidsoap

The heart of AURA Engine. It uses the built in mixer, to switch between different sources. A source can be a stream, the filesystem or linein

Hardware

Soundcard

AURA Engine ist tested with an ASUS Xonar DGX. It should work with every by ALSA supported soundcard. PulseAudio support is planned.

Hard/Soft

When you use ALSA, you will have to play around with ALSA settings. In the folder ./modules/liquidsoap is a scipt called alsa_settings_tester.liq. You can start it with 'liquidsoap -v --debug alsa_settings_tester.liq'. Changing and playing with settings can help you to find correct ALSA settings.