Meta XR Audio SDK for Unreal - Ambisonics
The plugin supports ambisonics in the AmbiX (ACN/SN3D) format. You must use this feature with 4-channel ambisonic tracks.
By the end of this document, you’ll be able to:
- Create a Soundfield Submix that uses the Meta XR Audio Decoder.
- Route an ambisonic audio cue to be decoded by Meta XR Audio.
- Understand the behaviors of the Meta XR Audio ambisonic plugin.
The Meta XR Audio SDK renders ambisonics with an advanced spherical harmonic binaural renderer. Compared to traditional rendering methods that use virtual speakers, this renderer provides a better frequency response, better externalization, less spatial smearing, and also uses less compute resources.
For ambisonic sounds in Unreal, they must be routed to a Soundfield Submix as opposed to a standard Submix. To apply Ambisonics to an event, follow the steps below:
Drag and drop your ambisonic file into the Content Browser. Double click the file to go to its settings. Ensure that ambisonics are enabled for this file as shown below:
Right click in the content browser and click Sounds > Mix > Soundfield Submix.
Right click in the content browser and click Sounds > Sound Cue.
Double click the Sound Cue and add the ambisonic file to the playback for this sound cue. Under Submix > Base Submix, select the Soundfield Submix created in step 1.
Double click the Soundfield Submix created in step 1. Set the Soundfield > Soundfield Encoding Format to MetaXR Binaural.
Unreal has a unique feature which allows you to route audio tracks that are not ambisonic into a Soundfield Submix with the Meta XR Audio ambisonic format enabled. An example input would be a mono source or a stereo source. When this occurs while Meta XR Audio is set as the Soundfield Encoding Format, the plugin will render each channel of the input as a separate binarual source. For example, a stereo input would have the left channel binaurally renderered as a source 90 degrees to the left and the right channel binaurally rendered 90 degrees to the right.
However, if you set the default Spatialization Plugin in your project settings to Meta XR Audio, then the output of this scenario will be silence. Using both methods is not supported and it is highly encouraged to use the regular spatialization process instead of sending non-ambisonic streams through the ambisonic encoder. Setting up your non-ambisonic sources as regular Sound Cues and routing them into regular Sound Submixes while the Spatialization Plugin is set to Meta XR Audio will offer much better controls and future compatibility. You can still perform standard ambisonic processing (ambisonic input with binaural output) while using regular spatialization.
- Rotating either the headset (the AudioListener) or the audio source itself affects the ambisonic orientation.
- You can control the level of ambisonic audio sources in your scene by customizing the Volume Rolloff curve for each audio source.
Learn more about advanced Acoustic Ray Tracing to use in place of the Shoebox Room model by
clicking here.