UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FAudioEffectsManager Class Reference

#include <AudioEffect.h>

+ Inheritance diagram for FAudioEffectsManager:

Public Member Functions

ENGINE_API FAudioEffectsManager (FAudioDevice *Device)
 
virtual ~FAudioEffectsManager (void)
 
void AddReferencedObjects (FReferenceCollector &Collector)
 
void Update (void)
 
void SetReverbSettings (const FReverbSettings &ReverbSettings, bool bForce=false)
 
void SetMixSettings (USoundMix *Mix, bool bIgnorePriority=false, bool bForce=false)
 
void ClearMixSettings ()
 
virtual void SetReverbEffectParameters (const FAudioEffectParameters &InEffectParameters)
 
virtual void SetEQEffectParameters (const FAudioEffectParameters &InEffectParameters)
 
virtual void SetRadioEffectParameters (const FAudioEffectParameters &InEffectParameters)
 
virtual voidInitEffect (FSoundSource *Source)
 
virtual voidUpdateEffect (class FSoundSource *Source)
 
void DestroyEffect (FSoundSource *Source)
 
ENGINE_API int64 VolumeToDeciBels (float Volume)
 
ENGINE_API int64 VolumeToMilliBels (float Volume, int32 MaxMilliBels)
 
void ResetInterpolation (void)
 
USoundMixGetCurrentEQMix () const
 
UReverbEffectGetCurrentReverbEffect () const
 

Protected Member Functions

void InitAudioEffects (void)
 

Protected Attributes

FAudioDeviceAudioDevice
 
bool bEffectsInitialised
 
TObjectPtr< UReverbEffectCurrentReverbAsset
 
FAudioReverbEffect SourceReverbEffect
 
FAudioReverbEffect CurrentReverbEffect
 
FAudioReverbEffect PrevReverbEffect
 
FAudioReverbEffect DestinationReverbEffect
 
FReverbSettings CurrentReverbSettings
 
USoundMixCurrentEQMix
 
FAudioEQEffect SourceEQEffect
 
FAudioEQEffect CurrentEQEffect
 
FAudioEQEffect DestinationEQEffect
 
bool bReverbActive
 
bool bEQActive
 
bool bReverbChanged
 
bool bEQChanged
 

Detailed Description

Manager class to handle the interface to various audio effects

Constructor & Destructor Documentation

◆ FAudioEffectsManager()

FAudioEffectsManager::FAudioEffectsManager ( FAudioDevice InDevice)

Clear out any reverb and EQ settings

◆ ~FAudioEffectsManager()

virtual FAudioEffectsManager::~FAudioEffectsManager ( void  )
inlinevirtual

Member Function Documentation

◆ AddReferencedObjects()

void FAudioEffectsManager::AddReferencedObjects ( FReferenceCollector Collector)

◆ ClearMixSettings()

void FAudioEffectsManager::ClearMixSettings ( )

Clears the current SoundMix and any EQ settings it has applied

If there is an active SoundMix, clear it and any EQ settings it applied

◆ DestroyEffect()

void FAudioEffectsManager::DestroyEffect ( FSoundSource Source)
inline

Platform dependent call to destroy any effect related data

◆ GetCurrentEQMix()

USoundMix * FAudioEffectsManager::GetCurrentEQMix ( ) const
inline

Gets the SoundMix currently controlling EQ.

◆ GetCurrentReverbEffect()

UReverbEffect * FAudioEffectsManager::GetCurrentReverbEffect ( ) const
inline

◆ InitAudioEffects()

void FAudioEffectsManager::InitAudioEffects ( void  )
protected

Sets up default reverb and eq settings

◆ InitEffect()

virtual void * FAudioEffectsManager::InitEffect ( FSoundSource Source)
inlinevirtual

Platform dependent call to init effect data on a sound source

◆ ResetInterpolation()

void FAudioEffectsManager::ResetInterpolation ( void  )

Resets all interpolating values to defaults.

◆ SetEQEffectParameters()

virtual void FAudioEffectsManager::SetEQEffectParameters ( const FAudioEffectParameters InEffectParameters)
inlinevirtual

Calls the platform specific code to set the parameters that define EQ

Reimplemented in Audio::FAudioMixerEffectsManager.

◆ SetMixSettings()

void FAudioEffectsManager::SetMixSettings ( USoundMix NewMix,
bool  bIgnorePriority = false,
bool  bForce = false 
)

Engine hook to handle setting and fading in of EQ effects and group ducking

Parameters
MixThe SoundMix we want to switch to.
bIgnorePriorityWhether EQPriority should be ignored to force mix change.

Sets new EQ mix if necessary. Otherwise interpolates to the current settings and calls SetEffect to handle the platform specific aspect.

◆ SetRadioEffectParameters()

virtual void FAudioEffectsManager::SetRadioEffectParameters ( const FAudioEffectParameters InEffectParameters)
inlinevirtual

Calls the platform-specific code to set the parameters that define a radio effect.

Parameters
InEffectParametersThe new parameters for the radio distortion effect.

Reimplemented in Audio::FAudioMixerEffectsManager.

◆ SetReverbEffectParameters()

virtual void FAudioEffectsManager::SetReverbEffectParameters ( const FAudioEffectParameters InEffectParameters)
inlinevirtual

Calls the platform specific code to set the parameters that define reverb

Reimplemented in Audio::FAudioMixerEffectsManager.

◆ SetReverbSettings()

void FAudioEffectsManager::SetReverbSettings ( const FReverbSettings ReverbSettings,
bool  bForce = false 
)

Engine hook to handle setting and fading in of reverb effects

Called every tick from UGameViewportClient::Draw

Sets new reverb mode if necessary. Otherwise interpolates to the current settings and calls SetEffect to handle the platform specific aspect.

Update the settings if the reverb has changed

◆ Update()

void FAudioEffectsManager::Update ( void  )

Feed in new settings to the audio effect system

◆ UpdateEffect()

virtual void * FAudioEffectsManager::UpdateEffect ( class FSoundSource Source)
inlinevirtual

Platform dependent call to update the sound output with new parameters

◆ VolumeToDeciBels()

int64 FAudioEffectsManager::VolumeToDeciBels ( float  Volume)

Converts and volume (0.0f to 1.0f) to a deciBel value

◆ VolumeToMilliBels()

int64 FAudioEffectsManager::VolumeToMilliBels ( float  Volume,
int32  MaxMilliBels 
)

Converts and volume (0.0f to 1.0f) to a MilliBel value (a Hundredth of a deciBel)

Member Data Documentation

◆ AudioDevice

FAudioDevice* FAudioEffectsManager::AudioDevice
protected

◆ bEffectsInitialised

bool FAudioEffectsManager::bEffectsInitialised
protected

◆ bEQActive

bool FAudioEffectsManager::bEQActive
protected

◆ bEQChanged

bool FAudioEffectsManager::bEQChanged
protected

◆ bReverbActive

bool FAudioEffectsManager::bReverbActive
protected

◆ bReverbChanged

bool FAudioEffectsManager::bReverbChanged
protected

◆ CurrentEQEffect

FAudioEQEffect FAudioEffectsManager::CurrentEQEffect
protected

◆ CurrentEQMix

USoundMix* FAudioEffectsManager::CurrentEQMix
protected

◆ CurrentReverbAsset

TObjectPtr<UReverbEffect> FAudioEffectsManager::CurrentReverbAsset
protected

◆ CurrentReverbEffect

FAudioReverbEffect FAudioEffectsManager::CurrentReverbEffect
protected

◆ CurrentReverbSettings

FReverbSettings FAudioEffectsManager::CurrentReverbSettings
protected

◆ DestinationEQEffect

FAudioEQEffect FAudioEffectsManager::DestinationEQEffect
protected

◆ DestinationReverbEffect

FAudioReverbEffect FAudioEffectsManager::DestinationReverbEffect
protected

◆ PrevReverbEffect

FAudioReverbEffect FAudioEffectsManager::PrevReverbEffect
protected

◆ SourceEQEffect

FAudioEQEffect FAudioEffectsManager::SourceEQEffect
protected

◆ SourceReverbEffect

FAudioReverbEffect FAudioEffectsManager::SourceReverbEffect
protected

The documentation for this class was generated from the following files: