@@ -10,7 +10,7 @@ For full utilization Engine Core might be combined with [Engine](https://gitlab.
...
@@ -10,7 +10,7 @@ For full utilization Engine Core might be combined with [Engine](https://gitlab.
-**Play audio from various sources** including files, streams and analog live audio
-**Play audio from various sources** including files, streams and analog live audio
-**Analog audio or digital stream output** which is able to connect to an Icecast Server. It allows to stream to multiple Icecast Servers simultaniousely including sending of meta information using the *Icy* protocol.
-**Analog audio or digital stream output** which is able to connect to an Icecast Server. It allows to stream to multiple Icecast Servers simultaniousely including sending of meta information using the *Icy* protocol.
-**Auto DJ** triggered by a silence detector to avoid [Dead Air](https://en.wikipedia.org/wiki/Dead_air). Play randomized music form a folder or M3U playlist.
-**Auto DJ** triggered by a silence detector to avoid [Dead Air](https://en.wikipedia.org/wiki/Dead_air). Play randomized music from a folder or M3U playlist.
-**ReplayGain** normalization done using passed [ReplayGain](https://en.wikipedia.org/wiki/ReplayGain) meta data.
-**ReplayGain** normalization done using passed [ReplayGain](https://en.wikipedia.org/wiki/ReplayGain) meta data.
-**Track Service** notifications when used in conjunction with [Engine API](https://gitlab.servus.at/aura/engine-api)
-**Track Service** notifications when used in conjunction with [Engine API](https://gitlab.servus.at/aura/engine-api)
...
@@ -41,9 +41,11 @@ In certain scenarios like for development you might want to do a bare metal inst
...
@@ -41,9 +41,11 @@ In certain scenarios like for development you might want to do a bare metal inst
## Quickstart
## Quickstart
1. Create the folder structure `./audio/station/` in the project root and populate `station` with some music files. This folder is picked up as a so-called *Station Fallback* in case no other music is scheduled or if silence is detected.
Perform following commands inside the `engine-core` directory:
2. Execute `./run.sh` to get the *Engine Core* server running.
3. Voilá, you should hear some music!
1. Create an initial configuration file based on an sample config: `cp config/sample-production.engine-core.ini config/engine-core.ini`
2. Create the folder structure `./audio/station/` in the project root and populate `station` with some music files. This folder is picked up as a so-called *Station Fallback* in case no other music is scheduled or if silence is detected.
3. Execute `./run.sh` to get the *Engine Core* server running. Voilá, you should hear some music!
If the audio device desired for playback is set as `default`, the Engine now should be ready to play sound. If you are not hearing any sound set a working output device for `output_device_0` in `engine-core.ini` and carefully review the logs.
If the audio device desired for playback is set as `default`, the Engine now should be ready to play sound. If you are not hearing any sound set a working output device for `output_device_0` in `engine-core.ini` and carefully review the logs.
...
@@ -55,7 +57,7 @@ After this is working you might be ready for a more sophisticated setup of the e
...
@@ -55,7 +57,7 @@ After this is working you might be ready for a more sophisticated setup of the e
The aformentioned `audio` folder is the base for retrieving audio files. Engine Core is referencing three folders from this so-called *Audio Store*:
The aformentioned `audio` folder is the base for retrieving audio files. Engine Core is referencing three folders from this so-called *Audio Store*:
-**`audio/station/`**: A local folder for any emergency playback, also called *Station Fallback*. All audio files inside are played in a randomized order, if no actually scheduled music is played by the engine. The folder is being watched for changes. So you can add/remove audio on the fly.
-**`audio/station/`**: A local folder for any emergency playback, also called *Station Fallback*. All audio files inside are played in a randomized order, if no actually scheduled music is played by the engine. The folder is being watched for changes. So you can add/remove audio on the fly.
-**`audio/playlist/`**: Put a file `station-fallback-playlist.m3u` in here and it has the same effect as the fallback folder. If nothing else is scheduled, the M3U Playlist is played with higher priority than the folder. The playlist is being watched for changes.
-**`audio/playlist/`**: Put a file `station-fallback-playlist.m3u` in here and it has the same effect as the fallback folder. If nothing else is scheduled, the M3U Playlist is played with higher priority than the folder. The playlist is being watched for changes.
-**`audio/source/`**: This is the location for audio files provided by [Tank](https://gitlab.servus.at/aura/tank). Usually any audio files which are part of the scheduled programme are read for their broadcast from here. If you are running all AURA components on a single machine you should be fine with just creating a symbolic link to the relevant Tank folder (`ln -s ../engine/audio ./audio`). But in some [distributed and redundant production scenario](https://gitlab.servus.at/aura/meta/-/blob/master/docs/installation-guide.md) you might think about more advanced options on how to sync your audio files between machines. You can find some ideas in the doc " [Setting up the Audio Store](https://gitlab.servus.at/aura/meta/-/blob/master/docs/setup-audio-store.md)".
-**`audio/source/`**: This is the location for audio files provided by [Tank](https://gitlab.servus.at/aura/tank). Usually any audio files which are part of the scheduled programme are read for their broadcast from here. If you are running all AURA components on a single machine you should be fine with just creating a symbolic link to the relevant Tank folder (`ln -s ../engine/audio ./audio`). But in some [distributed and redundant production scenario](https://gitlab.servus.at/aura/meta/-/blob/master/docs/installation-guide.md) you might think about more advanced options on how to sync your audio files between machines. You can find some ideas in the doc " [Setting up the Audio Store](https://gitlab.servus.at/aura/meta/-/blob/master/docs/setup-audio-store.md)".