CRI ADX is a full-featured and optimized audio middleware with multi-platform support.
It works on a wide variety of machines ranging from game consoles to handhelds and smart phones.
On platforms without dedicated sound hardware, a software synthesizer - Atom sound renderer - performs the digital signal processing (e.g. sound effects and mixing).
On platforms with sound hardware, decoding and mixing are performed by the hardware to achieve the best performance possible.
CRI ADX provides an integrated environment to intuitively and efficiently create all the sounds required by an interactive application, such as music, dialogue, and sound effect. Advanced sound functions empower the sound designers and offer him more creative options to design complex sonic behaviors.
Components of ADX
CRI ADX is mainly composed of the two following components:
CRI Atom runtime library
CRI Atom tools
"Atom" is the system name of CRI ADX. It is used as a generic name for the tools and the runtime library.
The "CRI Atom Craft" authoring tool is the core of the "CRI Atom tools. It is used to create the CRI ADX data.
By using CRI Atom Craft, a sound designer can author the desired sounds without requiring the heavy involvement of a programmer.
The CRI Atom runtime library is a library for target platforms.
It enables the programmer to playback the audio data created in CRI Audio Craft easily.
Features of ADX
Multi-platform support
It supports handhelds and game consoles as well as other platforms such as smart phones, arcade machines and amusement systems.
Flexibility
ADX offers a great flexibility. Not only can it leverage the sound hardware capabilities of the target machine but it can also use a high quality software sound system to achieve the best performance in all situations.
The software synthesizer eliminates the limits imposed by the hardware architecture and its limited number of voices and channels. It also supports various codecs and effects.
Low-load and high-quality audio compression technologies "HCA" and "HCA-MX"
ADX provides the "HCA" sound codec. Its high quality and compression ratio are comparable to MP3 and AAC.
Thanks to the HCA codec, the size of the sound data can be reduced so that it can fit in memory or on the storage media. "HCA-MX" reduces the CPU load when multiple HCA codecs are used for playback.
This enables a less powerful platform to play multiple HCA-encoded sounds simultaneously.
ADX supports "streaming". It can play a part of a sound while loading another part.
Playback is started before the whole sound data is loaded into memory. Therefore it is possible to play large sound data using less memory and with a smaller latency.
Multiple sounds can be streamed simultaneously from a storage media. Game data can also be loaded while playing music.
ADX supports "micro streaming," which takes into account the properties of a storage media with shorter seek time (e.g. flash ROM) to achieve low latency, low CPU load, and use less memory during streaming.
Background-loading of game data
Game data can easily be loaded during streaming playback.
The streaming playback will not be interrupted, even while loading large data.
"CRI Atom Craft" authoring tool
Sound designers can create complex sonic behaviors simply by changing parameters in the authoring tool, without having to involve programmers.
The intuitive interface of the tool makes it very easy to design sounds in a same way than in a DAW.
It is possible to play any combinations of "sound blocks" created in the authoring tool.
This allows for example to change the music dynamically based on what is happening in the game.
An intuitive GUI can be used to create sounds (e.g. car engine or cheers) that evolve during the game (e.g. due to a change of the speed of the vehicle or the excitement of the crowd). It can be done simply by drawing curves.
The parameters of the sounds can conveniently be controlled through the use of categories.
It is possible to change the value of a parameter for all the sounds belonging to the same category at once.
It is possible to define interactions between categories with REACT.
For example, REACT can be used to automatically lower the volume of the music during dialogue playback without any programming.
Advanced sound design can be achieved by using various effects such as reverbs and compressors, as well as routing.
(Some effects settings are platform-specific)