VR Audio Toolset
Aspic Audiostack delivers a compatibility layer between multiple advanced VR audio technologies. This audio SDK enables you to create custom audio pipelines in VR applications.
Smoothly route your signal between inputs, outputs and effects. Available modules provide various features, such as audio streaming, multi-listener rendering, binaural or multi-channel spatialization…
Aspic Audiostack (early 2016)
Choose only the features you need
Aspic Audiostack offers a wide range of advanced audio features for limitless possibilities. Moreover, you can pick only what you need thanks to its modular architecture.
The set of available modules, as listed below, is growing at a rapid pace. Feel free and help us choose the next technologies to be integrated!
Focus on the audio experience
Design your pipeline without bothering about low-level considerations. The tool handles complexity for you and provides a compatibility layer between multiple technologies.
Connect inputs, outputs and effects together to easily build new vr audio experiences!

Here is an illustration of an advanced VR collaborative system relying on Aspic Audiostack.
There are three users in a virtual environment. Multi-listener in-app voice communication is provided with 3d audio.
This system can be easily set up by using the Binaural, RTP, Asio and Multispeaker modules.
Integration samples
Our audio SDK provides plugins for Unity3D and a C/C++ API
This video shows Asio output component in Unity3D. This component detects available asio drivers. You can chose the channel count (ex: 2 for stereo, 4 for first order ambisonic, etc.) and map hardware I/O. The component can be instanciated and configured dynamically from script.
Audiostack is able to synthetize a “Hello” voice. This sample is the first one we use to test if the framework is properly installed.
1 2 3 4 5 6 7 8 9 10 11 12 13 | int sourceID = 0, outputID = 1; AudiostackContext context; // HelloInput synthetize a "Hello world" voice context.createInput(sourceID,HelloInput); context.createOutput(outputID,OpenALOutput,false); // Chose whether output is mono or stereo // Connect input to output context.connect(sourceID,outputID); // Start audio context.play(); |
In this sample, we create a collaborative app : send and receive voice over network using codecs such as Opus.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | int audioIn=0, voipIn=1, voipOut=2, audioOut=3; AudiostackContext context; // Create RTP codec OpusCodec codec; codec.setSamplerate(24000); codec.setBitrate(32000); codec.setVOIP(true); // We want to get voip input and listen on audio output context.createInput(voipIn,RtpInput,codec); context.createOutput(audioOut,WindowsCoreOutput,false); // We want to generate a voice and send it over network context.createInput(audioIn,HelloInput); context.createOutput(voipOut,RtpOutput,codec); // Setup RTP ports and address context.setParameter("source/1/port",9040); context.setParameter("listener/2/port",9040); context.setParameter("listener/2/ip_address","192.168.1.100"); context.connect(audioIn,voipOut); context.connect(voipIn,audioOut); context.play(); |
Sources and listeners can be moved at any time using parameters (and OSC)
1 | context.setParameter("source/1/position",{src.x, src.y, src.z}); |
Core module
Contains basic features to perform the most essential tasks. These features include audio file reading, stereo or mono ouput, basic audio effects and microphone capture. The default audio driver used by the core module is OpenAL.
Low latency module
Contains inputs and outputs to address professional audio soundcards. This is the best option to access multiple speakers and headphones or to achieve latencies lower than those of standard operating systems.
Uses ASIO on Windows hosts (ASIO stands for Audio Stream Input/Output). Uses JACK on Linux hosts.
Multispeaker module
Provides spatialization effects for sound rendering over multiple speakers.
Conventional layouts such as 5.1 or 7.1 setups are readily available. A custom 2D or 3D layout can also be selected. The spatialization then relies on the Vector Based Amplitude Panning method.
For custom layouts, a professional soundcard and the Asio module may be required.
OSC module
Provides a mechanism to control the parameters of Audiostack over a network. Remote control is indeed a highly useful feature, for instance when audio rendering is performed on a different machine than the one running the application.
The module uses the Open Sound Control protocol.
Dynamic Reverb module
Uses Aspic engine to obtain realistic sound rendering (occlusion, dynamic reverb).
Binaural module
Performs audio spatialization based on Head-Related Transfer Function (HRTF). This module focuses on computational efficiency rather than accuracy.
Embeds SOFA decoder to load custom HRTFs.
Audio streaming module
Contains everything to stream realtime audio in and out of the application. This can be used to render sound remotely or for in-app voice communication.
The RTP network protocol is used. The audio payload can be uncompressed audio, for instance when used in a local network, or compressed (with either the Opus or Ogg codec) in the case of bandwidth limited applications.
Ambisonics module
This module embeds ambisonics algorithms to encode, decode and convert ambisonics up to third order. The default ambisonic format is ACN SN3D, but streams in other format can easily be converted by the conversion effect (available conversions are detailed in the module documentation).
Streams can then be decoded to binaural or to multi-speaker signals (using VBAP module). All inputs and outputs handling multichannel (file, asio, jack, …) can be used with ambisonics effects.
Multiple integration means

Our middleware comes with plugins to enhance the features of popular 3D engines such as Unity3D or Unreal Engine.

You can also use it directly through a native API for custom integration.

Aspic Audiostack may also be deployed as a server for remote audio rendering.
Subscribe to our newsletter.
We have stop shipping any Aspic Technologies solutions for a unknown duration. Please register to get informed of products avaibility. Here is the link :