CRIWARE Unity Plugin Manual  Last Updated: 2024-07-12
About ADX

What is ADX?

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.

See " Audio compression codec ".

Multi-streaming
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.

adx2u_overview_multistm.png

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.

adx2u_overview_dbas.png

"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.

adx2u_overview_craft.png

See " CRI Atom Craft ".

Sequential playback
Sounds can be placed on a timeline and can be looped if needed.

adx2u_overview_sequence.png

See " Sequence ".

Block playback
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.

adx2u_overview_block.png

See " Block playback ".

"AISAC" interactive sound
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.

adx2u_overview_aisac.png

See " AISAC ".

Category control
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.

adx2u_overview_category.png

See " Category ".

REACT
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.

adx2u_overview_react.png

See " REACT ".

Effect routing
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)

adx2u_overview_routing.png

See " Bus and channel strip ".

In-game preview
The audio data can be replaced and the playback parameters (e.g. volume) adjusted while previewing a game.

adx2u_overview_ingame.png

See " In-game preview ".