Unreal Integration 2.02
AudioLink is an API that connects Unreal Audio Engine to external software, allowing Audio to be passed from Unreal to FMOD. By using hardware abstraction, AudioLink bypasses the need for direct hardware access and provides the strengths of both Unreal Audio Engine and FMOD.
This section will assume a basic understanding of the Unreal AudioLink system and will focus on the FMOD specific information.
The FMOD for Unreal AudioLink module assumes the Event linked contains a Programmer Instrument, this is what it uses to pass the sound data from Unreal to FMOD.
Generally you will want an Event that has a looping async programmer sound, because we may not know the length of the sounds being played from Unreal (ie. submixes are generally alive from startup to shutdown).
In the FMOD for Unreal Settings, you can choose to enable/disable AudioLink support. This will load/unload the appropriate modules when the editor is reloaded.
The default FMOD AudioLink Settings can be found in the project settings, under 'Plugins > FMOD AudioLink'. This is used in cases where the property has not been set, so it is unnecessary to pass it every time you create an AudioLink.
You can create multiple FMOD AudioLink Settings assets for different FMOD Events, allowing you to easily route different sounds to different events allowing for greater customization.
These settings are used to set up the FMOD Event:
FMOD supports AudioLink through three link types:
FMODAudioLink
.MetaSounds, Sound Cues, and Sound Waves are classed as 'Sources', to play them through AudioLink you can use the Attenuation Settings or the Submix.
In the source/component Details panel you will find the option to individually override or assign Attenuation settings:
Meta Sound | Sound Cue | Audio Component |
---|---|---|
It is recommended to disable the Attenuation (Spatialization)
option as FMOD needs to handle the spatialization.
To send specific sounds to FMOD, use the settings under Attenuation (AudioLink)
:
You can set the Send to Audio Link
flag and the Audio Link Settings property in the submix's Details panel, under 'Audio Link'.
AudioLink Component support is included through the FMOD AudioLink
Component, but is often unnecessary as sources are componentless by design, highly optimized for scale, and provide engine-level support.
The AudioLink Component is then controlled through the API:
PlayLink
SetLinkSound
StopLink
IsLinkPlaying
In UE5.2 and UE5.3, two events will spawn when using the FMODAudioLinkComponent: one for the component (intended) and one for the sound source (not intended). This appears to be an engine bug.
Workaround:
Create a new FMODAudioLinkSettings asset and leave the Link Event
empty, then assign this to the sound source (through the Attenuation Settings).
log LogFMODAudioLink All
to output (a lot) more detailed information to the log. Send to AudioLink
flag on the source or submix.