# Aura Engine <img src="https://gitlab.servus.at/autoradio/meta/-/raw/master/images/aura-engine.png" width="250" align="right" /> Aura Engine is a scheduling and play-out engine as part of [Aura Radio Software Suite](#About), specifically build for the requirements of community radios. <!-- TOC --> - [Aura Engine](#aura-engine) - [Features](#features) - [Architecture](#architecture) - [Installation](#installation) - [Read more](#read-more) - [About](#about) - [Resources](#resources) <!-- /TOC --> ## Features - **Scheduler** to automatically broadcast your radio programme (see [AURA Dashboard](https://gitlab.servus.at/aura/dashboard) for an schedule user interface) - **Play audio from multiple sources** including files, streams and analog live audio - **Dynamic switching of sources** organized as playlists - **Stream output** to an Icecast Server - **Multichannel Line-out** - **Silence Detector** to avoid *Dead Air* - **Auto DJ** which plays random music when silence is detected - **ReplayGain** normalization done using passed [ReplayGain](https://en.wikipedia.org/wiki/ReplayGain) meta data - **API** to query Track-Service, monthly reports and information for displaying the Studio Clock (see [Engine API](https://gitlab.servus.at/aura/engine-api)) - **Web Application for a Track Service** (see [AURA Player](https://gitlab.servus.at/aura/player)) - **Web Application providing a Studio Clock** (see [Engine Clock](https://gitlab.servus.at/aura/engine-clock)) - **Bulk and Timeslot Recorder** (This will be provided after v1.1 by a planned `engine-recorder` component) Read more on the [Engine Features](docs/engine-features.md) page. ## Architecture AURA Engine as part of the AURA Radio Suite uses an modulear architecture based on a REST API. All external information is retrieved using JSON data-structures. To learn more, checkout the [Engine Developer Guide](docs/developer-guide.md) or visit the [Aura Meta](https://gitlab.servus.at/autoradio/meta) repository. ## Installation - [Installation for Development](docs/installation-development.md) - [Installation for Production](docs/installation-production.md) - [Running with Docker](docs/running-docker.md) - [Setup the Audio Store](docs/setup-audio-store.md) ## Read more - [Developer Guide](docs/developer-guide.md) - [Engine Features](docs/engine-features.md) - [Frequently Asked Questions (FAQ)](docs/frequently-asked-questions.md) ## About Aura Engine is a scheduling and play-out engine as part of [Aura Radio Software Suite](#About), specifically build for the requirements of community radios. [<img src="https://gitlab.servus.at/autoradio/meta/-/raw/master/images/aura-logo.png" width="150" />](https://gitlab.servus.at/aura/meta) AURA stands for Automated Radio and is a swiss army knife for community radio stations. Beside the Engine it provides Steering (Admin Interface for the radio station), Dashboard (Collaborative scheduling and programme coordination), Tank (Audio uploading, pre-processing and delivery). Read more in the [Aura Meta](https://gitlab.servus.at/aura/meta) repository or on the specific project pages. | [<img src="https://gitlab.servus.at/aura/meta/-/raw/master/images/aura-steering.png" width="150" align="left" />](https://gitlab.servus.at/aura/steering) | [<img src="https://gitlab.servus.at/aura/meta/-/raw/master/images/aura-dashboard.png" width="150" align="left" />](https://gitlab.servus.at/aura/dashboard) | [<img src="https://gitlab.servus.at/aura/meta/-/raw/master/images/aura-tank.png" width="150" align="left" />](https://gitlab.servus.at/aura/tank) | [<img src="https://gitlab.servus.at/aura/meta/-/raw/master/images/aura-engine.png" width="150" align="left" />](https://gitlab.servus.at/aura/engine) | |---|---|---|---| | [Steering](https://gitlab.servus.at/aura/steering) | [Dashboard](https://gitlab.servus.at/aura/dashboard) | [Tank](https://gitlab.servus.at/aura/tank) | [Engine](https://gitlab.servus.at/aura/engine)<br/>[Engine API](https://gitlab.servus.at/aura/engine-api)<br/>[Engine Clock](https://gitlab.servus.at/aura/engine-clock) | ## Resources * **Python**: https://docs.python.org/ * **OPAM (OCaml Package Manager)**: https://opam.ocaml.org/ * **Liquidsoap**: https://www.liquidsoap.info/doc-1.4.0/ * **Jack Audio**: https://jackaudio.org/ * **Flask**: https://palletsprojects.com/p/flask/ * **Systemd**: https://systemd.io/ * **Supervisor**: http://supervisord.org/ * **Gunicorn**: https://gunicorn.org/