Firelight Technologies FMOD Studio API
What's New in 1.08
This section describes the major features introduced in the 1.08 release. See the Detailed Revision History for information regarding each patch release.
Bank loading performance improvements
Bank sample data loading has been optimised. The number of file accesses and seeks has been reduced. Multiple sample data loads are coalesced into a single read operation in sorted order. Performance when cancelling pending sample data loads has been been improved. There have been memory savings, so projects that load large numbers of sounds will see a memory improvement.
Studio sample data loading occurs on its own thread. Affinity can be controlled via per platform affinity settings.
Sample Data Idle Pool
To avoid spurious sample data reloading, Studio will keep a pool of recently used sounds in memory. This can help for cases where programmer doesn't manually preload data via Studio::EventDescription::loadSampleData or Studio::Bank::loadSampleData. See the Studio Bank Programmer Topic for more information.
Studio Profiler file I/O display
The FMOD Studio Profiler now displays the file I/O used for sample data, stream data, and bank metadata loading. The event instance lifetime view has indicators for when event instances are stalling waiting for sample data to load in.
3D Object Panner
The new 3D object panner DSP (FMOD_DSP_TYPE_OBJECTPAN) allows channels to be spatialized using Dolby Atmos (FMOD_OUTPUTTYPE_ATMOS) and Playstation VR (FMOD_OUTPUTTYPE_AUDIO3D) technology.
The output mode plugin API (FMOD_OUTPUT_DESCRIPTION) has been extended to allow custom object panner backends.
There is a new example 'object_pan' that demonstrates object based panning.
Multiple plugins in one file
Multiple DSP, output and codec plugins can be packaged into a single module. See FMOD_PLUGINLIST, System::getNumNestedPlugins, System::getNestedPlugin, and the DSP Plugin API Programmer Topic for more information.
Sound loading performance
Increased performance when loading samples and opening streams via the low level API.
Low latency output mode for Windows
The default WASAPI output mode has reduced latency by 40ms and improved mixer thread regularity.
FSBank and Profiler tools for Mac
Added Mac versions of the Profiler tool, FSBank tool, and FSBankLib API. These are included in the Mac and iOS API packages.
Support for new Studio features
- Left edge trimming of timelocked sounds.
- Start Offset as a percentage of sound length.
- Per asset encoding and streaming settings.
- New 'Decompressed' loading mode allows sounds to be decompressed into memory when loaded, rather than staying compressed.
What's new since 1.07 initial release
This section covers some of the improvements introduced between the first 1.07 release and the new 1.08 release. See the Detailed Revision History for more information on features introduced during the 1.07 lifetime.
Transceiver effect
This new DSP effect (FMOD_DSP_TYPE_TRANSCEIVER) broadcasts a signal to one of 32 global 'slots' or 'channels' (like a radio station). These signals can be monitored by a receiver anywhere in the mix. Each channel may have multiple transmitters or receivers connected.
Applications include sending the output of a global reverb back out in to the world to be spacialized, playing in-game radio both inside the cabin and also through loudspeakers placed outside, and many more.