The Data Arena audio stack is a fairly standard linux audio setup typically found on a Professional Linux Audio DAW (Digital Audio Workstation). Typically linux systems have to select between the (professional) Jack and the (regular desktop) PulseAudio systems. They've been integrated in the Data Arena, such that the stack operates as: PulseAudio -> Jack -> ALSA. This means just about everything works. Regular Desktop Audio speaks to PulseAudio, which passes audio through Jack, and all the Jack tools work as well. ALSA is the underlying (relatively simple) Audio Layer which all Linux Systems run.
Audio File Format
Although the Data Arena has 16 speakers, the audio file format expects 22 channels. Think of it as allowing for future expansion. Channels 17–22 are expected to be blank, though it doesn't matter: they're ignored.
.wav file will work. It can be test played on Solo with the unix command:
$ aplay myTestAudio.wav
Here is a 22-Channel
wav audio test file (20MB) which you can download:
Here is the same file in
ogg vorbis format, which allows 22-channels, but is a much smaller sized file (0.1MB)
When you play this file in the Data Arena, each speaker reports in turn its speaker-number. Speaker number 1 says "one". Then speaker number two then says "two", and so on up to 14. Speakers 15 and 16, being bass LFE speakers, say "fifteen" and "sixteen", but these sound like a very low "boombooohm", "boomboohm".
See the picture below. If you load this test-file into a multi-channel audio recorder like Audacity you will see 22 tracks. The first track, Track 1, is channel 1, which is speaker 1, which is to the left of the door when you enter the Data Arena. Track 14 is channel 14, which is speaker 14, which is just to the right of the Data Arena door. Tracks 15 and 16 are the seperate LFE/Bass tracks. Tracks 17 to 22 are blank.
Loaded into Audacity the 22-track file looks like this
Notice (above) the first line (track one) only has one sound sample on it, right at the beginning. That is because that speaker reports "one!" at the start of the audio playback and then stays silent (flat line) while all the other speakers report their speaker number. Standing in the Data Arena, you hear "one two three four ...." from each speaker, going clockwise around the room. Notice the diagonal arrangement of samples...
If you wish to create spatial audio effects, this can be done in software (such as Audacity, or the equivalent) and rendered out to the 14 channel ring. So long as you deliver the audio tracks to the right channels it will work. For instance, ambient room effects can be created.
22 Channel Audio can be added to any movie file such as mpeg or avi and it will play back as expected. Solo will see the audio tracks inside the mpeg movie and send the audio to the RME Fireface. ffmpeg can be used to add video and audio together. sox is a useful linux tool to manipulate audio.
REAPER is a complete digital audio production application for computers, offering a full multitrack audio and MIDI recording, editing, processing, mixing and mastering toolset.
REAPER supports a vast range of hardware, digital formats and plugins, and can be comprehensively extended, scripted and modified.
Reaper can be used to create spatial visualisation and processing of stereo, surround, or multichannel audio (up to 64 channels).
There's a lot more technical information about Reaper here.
The Linux version of Reaper 5.979 is installed. To run it open a linux shell (Konsole terminal window) and type:
Live playback - OpenAL
This is where things will get interesting. We have OpenAL installed on Solo, which means interactive audio, or software which creates interactive 3D Audio can drive the audio in realtime.
Interesting Fact: The Stereo Video Player software used in the Data Arena "bino" has been compiled with the OpenAL libraries to playback audio in the Data Arena.
Audio via Matlab
Matlab can be used to generate live audio in the Data Arena, through Matlab running on Solo. More on this soon.
Audio & Video Manipulation via ffmpeg commands
Here's some example ffmpeg commands to show how easy it is to manipulate video and audio. In each example, hopefully you can recognise the input filenames as
inFile.wav and so on, and the output files with names like
To COMBINE 2 files into one, say a video file and an audio file, you could do this:
$ ffmpeg -i inFile.mov -i inFile.wav -c:v copy -c:a copy outFile.mp4
Many many formats are known by ffmpeg, so don't worry if your
inFile is an
mp4 etc. To Strip the Audio from a movie file, leaving just an audio file as output, you could do this:
$ ffmpeg -i infile.mp4 -vn -acodec copy outFile.aac
When working with video and audio files it is really useful to be able to see what is contained in a media file. There are many ways to do this. in the Data Arena we use a program called
Here's an example which shows what's in the "Ogg Vorbis" format audio test file above.
$ mediainfo DA_TestAudio_16VoicedChannels_22tracks_S16_LE.ogg General Complete name : DA_TestAudio_16VoicedChannels_22tracks_S16_LE.ogg Format : Ogg File size : 115 KiB Duration : 10 s 759 ms Overall bit rate mode : Variable Overall bit rate : 87.6 kb/s Album : UTS Data Arena Audio Testfile Track name : 16 Channels Named Performer : Ben Simons Recorded date : 2015 Comment : This file is 22 tracks, tracks 1-14 are speakers in a ring, 15-16 LFE, 17-22 are blank Audio ID : 1980622912 (0x760DE840) Format : Vorbis Format settings, Floor : 1 Duration : 10 s 759 ms Bit rate mode : Variable Bit rate : 2 112 kb/s Channel(s) : 22 channels Sampling rate : 44.1 kHz Compression mode : Lossy Stream size : 2.71 MiB Writing library : libVorbis (Now 100% fewer shells) (20180316 (Now 100% fewer shells))