Navigation
API > API/Runtime > API/Runtime/Engine
| Name | FAudioDevice |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/AudioDevice.h |
| Include Path | #include "AudioDevice.h" |
Syntax
class FAudioDevice : public FExec
Inheritance Hierarchy
- FExec → FAudioDevice
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FAudioDevice() |
Constructor | AudioDevice.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FAudioDevice() |
AudioDevice.h |
Structs
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FToggleSoloPtr | void(Audio::FAudioDebugger::*)(FName InName, bool bExclusive) | Handles all argument parsing for the solo commands in one place | AudioDevice.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bAudioMixerModuleLoaded | uint8 | Whether or not the audio mixer module is being used by this device. | AudioDevice.h | |
| bDisableAudioCaching | uint8 | HACK: Temporarily disable audio caching. | AudioDevice.h | |
| bIsAudioDeviceHardwareInitialized | uint8 | Whether or not the lower-level audio device hardware initialized. | AudioDevice.h | |
| bIsBakedAnalysisEnabled | uint8 | If baked analysis querying is enabled. | AudioDevice.h | |
| bIsStoppingVoicesEnabled | uint8 | AudioDevice.h | ||
| bOcclusionIsExternalSend | uint8 | Whether or not various audio plugin interfaces are external sends. | AudioDevice.h | |
| bReverbIsExternalSend | uint8 | AudioDevice.h | ||
| bSpatializationIsExternalSend | uint8 | AudioDevice.h | ||
| DeviceID | Audio::FDeviceId | The handle for this audio device used in the audio device manager. | AudioDevice.h | |
| ListenerProxies | TArray< FListenerProxy > | Game thread cache of listener transforms. | AudioDevice.h | |
| MaxChannelsSupportedBySpatializationPlugin | int32 | Max amount of channels a source can be to be spatialized by our active spatialization plugin. | AudioDevice.h | |
| ModulationInterface | TAudioModulationPtr | 3rd party modulation interface | AudioDevice.h | |
| NumPrecacheFrames | int32 | The number of frames to precache. | AudioDevice.h | |
| NumStoppingSources | int32 | The number of sources to reserve for stopping sounds. | AudioDevice.h | |
| OcclusionInterface | TAudioOcclusionPtr | 3rd party occlusion interface. | AudioDevice.h | |
| PlatformSettings | FAudioPlatformSettings | The platform specific audio settings. | AudioDevice.h | |
| PluginListeners | TArray< TAudioPluginListenerPtr > | 3rd party listener observers registered to this audio device. | AudioDevice.h | |
| ReverbPluginInterface | TAudioReverbPtr | 3rd party reverb interface. | AudioDevice.h | |
| SampleRate | int32 | The sample rate of all the audio devices | AudioDevice.h | |
| SourceDataOverridePluginInterface | TAudioSourceDataOverridePtr | 3rd party source data override interface. | AudioDevice.h | |
| SpatializationPluginInterface | TAudioSpatializationPtr | AudioDevice.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActivatedReverbs | TMap< FName, FActivatedReverb > | Reverb Effects activated without volumes - Game Thread owned | AudioDevice.h | |
| ActiveSounds | TArray< FActiveSound * > | The audio thread update delta time for this audio thread update tick. | AudioDevice.h | |
| ActiveWaveInstances | TArray< FWaveInstance * > | AudioDevice.h | ||
| AudioComponentIDToActiveSoundMap | TMap< uint64, TArray< FActiveSound * > > | AudioDevice.h | ||
| AudioComponentIDToCanHaveMultipleActiveSoundsMap | TMap< uint64, bool > | Used to determine if a given Audio Component should be allowed to have multiple simultaneous associated active sounds | AudioDevice.h | |
| AudioStateProperties | TMap< FName, FName > | A generic mapping of FNames, used to store and retrieve tokens across the engine boundary. | AudioDevice.h | |
| AudioThreadReferenceCritSec | FCriticalSection | AudioDevice.h | ||
| AudioVolumeProxies | TMap< uint32, FAudioVolumeProxy > | AudioDevice.h | ||
| bAllowPlayWhenSilent | uint8 | Whether or not we're supporting zero volume wave instances | AudioDevice.h | |
| BaseSoundMix | USoundMix * | The Base SoundMix that's currently active | AudioDevice.h | |
| bGameWasTicking | uint8 | AudioDevice.h | ||
| bHasActivatedReverb | uint8 | Whether the value in HighestPriorityActivatedReverb should be used - Audio Thread owned | AudioDevice.h | |
| bHRTFDisabled | uint8 | Whether or not HRTF is disabled. | AudioDevice.h | |
| bHRTFDisabled_OnGameThread | bool | Gamethread representation of whether HRTF is disabbled for all 3d sounds. | AudioDevice.h | |
| bHRTFEnabledForAll | uint8 | Whether HRTF is enabled for all 3d sounds. | AudioDevice.h | |
| bHRTFEnabledForAll_OnGameThread | bool | Gamethread representation of whether HRTF is enabled for all 3d sounds. | AudioDevice.h | |
| bIsDeviceMuted | uint8 | Whether the audio device is active (current audio device in-focus in PIE) | AudioDevice.h | |
| bIsInitialized | uint8 | Whether the audio device has been initialized | AudioDevice.h | |
| bModulationInterfaceEnabled | uint8 | AudioDevice.h | ||
| bOcclusionInterfaceEnabled | uint8 | AudioDevice.h | ||
| bPluginListenersInitialized | uint8 | Whether or not we've initialized plugin listeners array. | AudioDevice.h | |
| bReverbInterfaceEnabled | uint8 | AudioDevice.h | ||
| bSourceDataOverrideInterfaceEnabled | uint8 | AudioDevice.h | ||
| bSpatializationInterfaceEnabled | uint8 | Whether or not various audio plugin interfaces are enabled. | AudioDevice.h | |
| bStartupSoundsPreCached | uint8 | True once the startup sounds have been precached | AudioDevice.h | |
| bUseAttenuationForNonGameWorlds | uint8 | Whether or not we force the use of attenuation for non-game worlds (as by default we only care about game worlds) | AudioDevice.h | |
| ConcurrencyManager | FSoundConcurrencyManager | AudioDevice.h | ||
| CurrentAudioVolumeSettings | FAudioVolumeSettings | The current audio volume settings the listener is in. | AudioDevice.h | |
| CurrentReverbEffect | UReverbEffect * | AudioDevice.h | ||
| CurrentTick | uint64 | AudioDevice.h | ||
| DebugState | TEnumAsByte< enum EDebugState > | The debug state of the audio device | AudioDevice.h | |
| DefaultBaseSoundMix | TObjectPtr< USoundMix > | The Base SoundMix that should be applied by default | AudioDevice.h | |
| DefaultReverbSendLevel | float | The default reverb send level to use for sources which have reverb applied but don't have an attenuation settings. | AudioDevice.h | |
| DynamicSoundClassProperties | TMap< USoundClass *, FSoundClassDynamicProperties > | AudioDevice.h | ||
| GlobalFocusSettings | FGlobalFocusSettings | The global focus settings | AudioDevice.h | |
| GlobalFocusSettings_GameThread | FGlobalFocusSettings | AudioDevice.h | ||
| GlobalMaxPitch | float | AudioDevice.h | ||
| GlobalMinPitch | float | Global min and max pitch scale, derived from audio settings. | AudioDevice.h | |
| GlobalPitchScale | FDynamicParameter | Global dynamic pitch scale parameter | AudioDevice.h | |
| HighestPriorityActivatedReverb_AudioThread | FActivatedReverb | The activated reverb that currently has the highest priority - Audio Thread owned | AudioDevice.h | |
| InverseListenerTransforms | TArray< FMatrix > | Inverse listener transformations, used for spatialization | AudioDevice.h | |
| LastUpdateTime | double | Timestamp of the last update | AudioDevice.h | |
| MaxActiveSoundsAddedPerFrame | int32 | Max number of active sounds to add per frame. | AudioDevice.h | |
| MaxChannels | int32 | The maximum number of concurrent audible sounds. Value cannot exceed MaxSources. | AudioDevice.h | |
| MaxChannels_GameThread | int32 | AudioDevice.h | ||
| MaxChannelsScale | float | Normalized (0.0f - 1.0f) scalar multiplier on max channels. | AudioDevice.h | |
| MaxChannelsScale_GameThread | float | AudioDevice.h | ||
| MaxSources | int32 | The maximum number of sources. Value cannot change after initialization. | AudioDevice.h | |
| NextResourceID | int32 | Next resource ID to assign out to a wave/buffer | AudioDevice.h | |
| OneShotCount | uint32 | A count of the number of one-shot active sounds. | AudioDevice.h | |
| PendingActivatedReverb | TSharedPtr< FActivatedReverb > | Most recently activated in-flight reverb going from the GT to the AT | AudioDevice.h | |
| PendingAddedActiveSounds | TQueue< FActiveSound * > | Pending active sounds waiting to be added. | AudioDevice.h | |
| PendingSoundsToDelete | TArray< FActiveSound * > | A set of sounds which need to be deleted but weren't able to be deleted due to pending async operations | AudioDevice.h | |
| PendingSoundsToStop | TSet< FActiveSound * > | Set of sounds which will be stopped next audio frame update | AudioDevice.h | |
| PlatformAudioHeadroom | float | A volume headroom to apply to specific platforms to achieve better platform consistency. | AudioDevice.h | |
| PrecachingSoundWaves | TArray< USoundWave * > | AudioDevice.h | ||
| PrevPassiveSoundMixModifiers | TArray< TObjectPtr< USoundMix > > | List of passive SoundMixes active last frame | AudioDevice.h | |
| PrimaryVolume | float | The master volume of the game combines the FApp::GetVolumeMultipler() value and the TransientPrimaryVolume. | AudioDevice.h | |
| ReferencedSoundWaves | TArray< TObjectPtr< USoundWave > > | Array of sound waves to add references to avoid GC until guaranteed to be done with precache or decodes. | AudioDevice.h | |
| ReferencedSoundWaves_AudioThread | TArray< USoundWave * > | AudioDevice.h | ||
| SoundClassAdjustersCopy | TArray< FSoundClassAdjuster > | Cached copy of sound class adjusters array. Cached to avoid allocating every frame. | AudioDevice.h | |
| SoundClasses | TMap< USoundClass *, FSoundClassProperties > | Current properties of all sound classes | AudioDevice.h | |
| SoundMixClassEffectOverrides | TMap< USoundMix *, FSoundMixClassOverrideMap > | Map of sound mix sound class overrides. Will override any sound class effects for any sound mixes | AudioDevice.h | |
| SoundMixModifiers | TMap< TObjectPtr< USoundMix >, FSoundMixState > | Map of sound mixes currently affecting audio properties | AudioDevice.h | |
| SubsystemCollection | FAudioSubsystemCollection | Subsystems tied to this device's lifecycle | AudioDevice.h | |
| SubsystemCollectionRoot | TStrongObjectPtr< UAudioSubsystemCollectionRoot > | Anchor used to connect UAudioEngineSubsystems to FAudioDevice | AudioDevice.h | |
| TestAudioComponent | TStrongObjectPtr< UAudioComponent > | An AudioComponent to play test sounds on | AudioDevice.h | |
| TransientPrimaryVolume | float | Transient master volume multiplier that can be modified at runtime without affecting user settings automatically reset to 1.0 on level change | AudioDevice.h | |
| VirtualLoops | TMap< FActiveSound *, FAudioVirtualLoop > | Array of dormant loops stopped due to proximity/applicable concurrency rules that can be retriggered. | AudioDevice.h | |
| WaveInstanceSourceMap | TMap< FWaveInstance *, FSoundSource * > | Set of sources used to play sounds (platform will subclass these) | AudioDevice.h | |
| WorldIDToDefaultAudioVolumeSettingsMap | TMap< uint32, TPair< FReverbSettings, FInteriorSettings > > | AudioDevice.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void ActivateReverbEffect
(
UReverbEffect* ReverbEffect, |
Activates a Reverb Effect without the need for a volume | AudioDevice.h | |
void AddAudioVolumeProxy
(
const FAudioVolumeProxy& Proxy |
AudioDevice.h | ||
virtual void AddEnvelopeFollowerDelegate
(
USoundSubmix* InSubmix, |
Adds an envelope follower delegate to the submix for this audio device. | AudioDevice.h | |
void AddNewActiveSound
(
TSharedRef< FActiveSound > ActiveSound, |
Adds an active sound to the audio device | AudioDevice.h | |
void AddNewActiveSound
(
const FActiveSound& ActiveSound, |
Adds an active sound to the audio device | AudioDevice.h | |
void AddNewActiveSound
(
const FActiveSound& ActiveSound, |
Adds an active sound to the audio device | AudioDevice.h | |
virtual Audio::FPatchOutputStrongPtr AddPatchForSubmix
(
uint32 InObjectId, |
AudioDevice.h | ||
virtual Audio::FPatchInput AddPatchInputForAudioBus
(
uint32 InAudioBusId, |
AudioDevice.h | ||
virtual Audio::FPatchOutputStrongPtr AddPatchOutputForAudioBus
(
uint32 InAudioBusId, |
AudioDevice.h | ||
FDelegateHandle AddPostRenderDelegate
(
const FOnAudioDevicePostRender::FDelegate& InDelegate |
AudioDevice.h | ||
FDelegateHandle AddPreRenderDelegate
(
const FOnAudioDevicePreRender::FDelegate& InDelegate |
AudioDevice.h | ||
void AddReferencedObjects
(
FReferenceCollector& Collector |
Track references to UObjects | AudioDevice.h | |
void AddSoundToStop
(
FActiveSound* SoundToStop |
Marks a sound to be stopped. Returns true if added to stop, false if already pending stop. | AudioDevice.h | |
virtual void AddSpectralAnalysisDelegate
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
void AddVirtualLoop
(
const FAudioVirtualLoop& InVirtualLoop |
AudioDevice.h | ||
void ApplyInteriorSettings
(
FActiveSound& ActiveSound, |
Applies interior settings from affecting volumes to the active sound (called on audio thread) | AudioDevice.h | |
bool AreStartupSoundsPreCached() |
AudioDevice.h | ||
bool CanHaveMultipleActiveSounds
(
uint64 AudioComponentID |
Whether a given Audio Component ID should be allowed to have multiple associated Active Sounds | AudioDevice.h | |
float ClampPitch
(
float InPitchScale |
AudioDevice.h | ||
void ClearListenerAttenuationOverride
(
int32 ListenerIndex |
Removes a listener attenuation override for the specified listener. | AudioDevice.h | |
void ClearSoundMixClassOverride
(
USoundMix* InSoundMix, |
Clears a sound class override in the given sound mix. | AudioDevice.h | |
void ClearSoundMixModifier
(
USoundMix* SoundMix |
Clear the effect of one SoundMix completely. | AudioDevice.h | |
void ClearSoundMixModifiers() |
Clear the effect of all SoundMix modifiers. | AudioDevice.h | |
virtual void ClearSubmixEffectChainOverride
(
USoundSubmix* InSoundSubmix, |
Clears all submix effect chain overrides from the submix. | AudioDevice.h | |
virtual void CountBytes
(
FArchive& Ar |
Counts the bytes for the structures used in this class | AudioDevice.h | |
virtual FAudioEffectsManager * CreateEffectsManager() |
Creates a new platform specific sound source | AudioDevice.h | |
FSoundSource * CreateSoundSource() |
Creates a new platform specific sound source | AudioDevice.h | |
void DeactivateReverbEffect
(
FName TagName |
Deactivates a Reverb Effect not applied by a volume | AudioDevice.h | |
void Deinitialize() |
De-initialization step that occurs after device destroyed broadcast, but before removal from the device manager | AudioDevice.h | |
void DestroyEffect
(
FSoundSource* Source |
Platform dependent call to destroy any effect related data | AudioDevice.h | |
virtual bool DisablePCMAudioCaching() |
Whether or not the platform disables caching of decompressed PCM data (i.e. to save memory on fixed memory platforms | AudioDevice.h | |
virtual void EnableDebugAudioOutput() |
Enables the audio device to output debug audio to test audio device output. | AudioDevice.h | |
void EnableRadioEffect
(
bool bEnable |
Enables or Disables the radio effect. | AudioDevice.h | |
virtual void FadeIn() |
AudioDevice.h | ||
virtual void FadeOut() |
Optional fadeout and fade in of audio to avoid clicks when closing or opening/reusing audio device. | AudioDevice.h | |
FActiveSound * FindActiveSound
(
uint64 AudioComponentID |
Finds the active sound for the specified audio component ID. | AudioDevice.h | |
int32 FindClosestListenerIndex
(
const FVector& Position, |
AudioDevice.h | ||
int32 FindClosestListenerIndex
(
const FTransform& SoundTransform |
Returns the index of the listener closest to the given sound transform | AudioDevice.h | |
| Stop all the audio components and sources attached to the world. | AudioDevice.h | ||
virtual void FlushAudioRenderingCommands
(
bool bPumpSynchronously |
Allows audio rendering command queue to flush during audio device flush. | AudioDevice.h | |
virtual void FlushExtended
(
UWorld* WorldToFlush, |
Derived classes can override this method to do their own cleanup. | AudioDevice.h | |
void ForEachSubsystem
(
TFunctionRef< void(TSubsystemClass*)> Operation |
Performs the given operation on all subsystems of the given class. | AudioDevice.h | |
void GatherInteriorData
(
FActiveSound& ActiveSound, |
Gathers data about interior volumes affecting the active sound (called on audio thread) | AudioDevice.h | |
const TMap< FName, FActivatedReverb > & GetActiveReverb() |
AudioDevice.h | ||
const TArray< FActiveSound * > & GetActiveSounds() |
AudioDevice.h | ||
const TArray< FWaveInstance * > & GetActiveWaveInstances() |
AudioDevice.h | ||
double GetAudioClock() |
Returns the audio clock of the audio device. Not supported on all platforms. | AudioDevice.h | |
| Returns an array of available audio devices names for the platform | AudioDevice.h | ||
| AudioDevice.h | |||
virtual double GetAudioTime() |
Return the audio stream time | AudioDevice.h | |
void GetAudioVolumeSettings
(
const uint32 WorldID, |
AudioDevice.h | ||
| Get the current list of available spatialization plugins | AudioDevice.h | ||
void GetAzimuth
(
const FAttenuationListenerData& OutListenerData, |
Returns the azimuth angle of the sound relative to the sound's nearest listener. | AudioDevice.h | |
int32 GetBufferLength() |
Returns the buffer length of the audio device. | AudioDevice.h | |
float GetCompressionDurationThreshold
(
const FSoundGroup& SoundGroup |
AudioDevice.h | ||
UReverbEffect * GetCurrentReverbEffect() |
Returns the currently applied reverb effect if there is one. | AudioDevice.h | |
virtual bool GetCurrentSourceEffectChain
(
const uint32 SourceEffectChainId, |
Returns the current source effect chain entries set dynamically from BP or elsewhere. | AudioDevice.h | |
FAudioSpatializationInterfaceInfo GetCurrentSpatializationPluginInterfaceInfo() |
AudioDevice.h | ||
bool GetDefaultAudioSettings
(
uint32 WorldID, |
Gets the default reverb and interior settings for the provided world. | AudioDevice.h | |
USoundMix * GetDefaultBaseSoundMixModifier() |
AudioDevice.h | ||
float GetDefaultReverbSendLevel() |
Returns the default reverb send level used for sources which have reverb applied but no attenuation settings. | AudioDevice.h | |
float GetDeviceDeltaTime() |
Returns the current audio device update delta time. | AudioDevice.h | |
bool GetDistanceSquaredToListener
(
const FVector& Location, |
Sets OutSqDistance to the distance from location to the appropriate listener representation, depending on calling thread. | AudioDevice.h | |
bool GetDistanceSquaredToNearestListener
(
const FVector& Location, |
Sets OutSqDistance to the distance from location the closest listener, depending on calling thread. | AudioDevice.h | |
float GetDistanceToNearestListener
(
const FVector& Location |
Returns the distance to the nearest listener from the given location | AudioDevice.h | |
| Return the pointer to the sound effects handler | AudioDevice.h | ||
const FAudioEffectsManager * GetEffects () |
Return the pointer to the sound effects handler | AudioDevice.h | |
float GetFocusFactor
(
const float Azimuth, |
Returns the focus factor of a sound based on its position and listener data. | AudioDevice.h | |
float GetGameDeltaTime() |
Returns the game's delta time | AudioDevice.h | |
const FGlobalFocusSettings & GetGlobalFocusSettings() |
AudioDevice.h | ||
TRange< float > GetGlobalPitchRange() |
Returns global pitch range | AudioDevice.h | |
const FDynamicParameter & GetGlobalPitchScale() |
AudioDevice.h | ||
virtual double GetInterpolatedAudioClock () |
Returns the audio clock interploated between audio device callbacks to provide a smoothed value. | AudioDevice.h | |
const FVector & GetListenerAttenuationOverride
(
int32 ListenerIndex |
Returns the listener attenuation override for the specified listener | AudioDevice.h | |
bool GetListenerPosition
(
int32 ListenerIndex, |
Returns a position from the appropriate listener representation, depending on calling thread. | AudioDevice.h | |
| AudioDevice.h | |||
bool GetListenerTransform
(
int32 ListenerIndex, |
Returns the transform of the appropriate listener representation, depending on calling thread | AudioDevice.h | |
FVector GetListenerTransformedDirection
(
const FVector& Position, |
Gets the direction of the given position vector transformed relative to listener. | AudioDevice.h | |
bool GetListenerWorldID
(
int32 ListenerIndex, |
Returns the WorldID of the appropriate listener representation, depending on calling thread | AudioDevice.h | |
float GetLowPassFilterResonance() |
Low pass filter OneOverQ value | AudioDevice.h | |
virtual void GetMagnitudesForFrequencies
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
virtual USoundSubmix & GetMainSubmixObject() |
AudioDevice.h | ||
float GetMasterVolume() |
AudioDevice.h | ||
int32 GetMaxChannels() |
Returns the max channels used by the audio device. | AudioDevice.h | |
void GetMaxDistanceAndFocusFactor
(
USoundBase* Sound, |
Gets the max distance and focus factor of a sound. | AudioDevice.h | |
int32 GetMaxSources() |
Returns the maximum sources used by the audio device set on initialization, including the number of stopping voices reserved. | AudioDevice.h | |
EDebugState GetMixDebugState() |
Gets the current audio debug state | AudioDevice.h | |
virtual int32 GetNumActiveSources() |
Returns the number of active sound sources | AudioDevice.h | |
int32 GetNumBuffers() |
Returns the number of buffers the audio device keeps queued. | AudioDevice.h | |
int32 GetNumFreeSources() |
Returns the number of free sources. | AudioDevice.h | |
virtual void GetPhasesForFrequencies
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
float GetPlatformAudioHeadroom() |
AudioDevice.h | ||
| AudioDevice.h | |||
float GetPrimaryVolume() |
Returns the volume that combines transient master volume and the FApp::GetVolumeMultiplier() value | AudioDevice.h | |
float GetSampleRate() |
Returns the sample rate used by the audio device. | AudioDevice.h | |
int32 GetSortedActiveWaveInstances
(
TArray< FWaveInstance* >& WaveInstances, |
Iterate over the active AudioComponents for wave instances that could be playing. | AudioDevice.h | |
FSoundClassProperties * GetSoundClassCurrentProperties
(
USoundClass* InSoundClass |
Gets the current properties of a sound class, if the sound class hasn't been registered, then it returns nullptr | AudioDevice.h | |
FSoundClassDynamicProperties * GetSoundClassDynamicProperties
(
USoundClass* InSoundClass |
Returns the parameters which are dynamic from the given sound class. | AudioDevice.h | |
const TMap< USoundMix *, FSoundMixState > & GetSoundMixModifiers() |
AudioDevice.h | ||
FSoundSource * GetSoundSource
(
FWaveInstance* WaveInstance |
AudioDevice.h | ||
TAudioSpatializationPtr GetSpatializationPluginInterface() |
Return the spatialization plugin interface. | AudioDevice.h | |
TSubsystemClass * GetSubsystem () |
Get a Subsystem of specified type | AudioDevice.h | |
TArray< TSubsystemClass * > GetSubsystemArrayCopy() |
Gets all Subsystems of specified type, this is only necessary for interfaces that can have multiple implementations instanced at a time. | AudioDevice.h | |
UAudioEngineSubsystem * GetSubsystemBase
(
TSubclassOf< UAudioEngineSubsystem > SubsystemClass |
Get a Subsystem of specified type | AudioDevice.h | |
UAudioComponent * GetTestComponent
(
UWorld* InWorld |
AudioDevice.h | ||
float GetTransientMasterVolume() |
AudioDevice.h | ||
float GetTransientPrimaryVolume() |
AudioDevice.h | ||
const TMap< FWaveInstance *, FSoundSource * > & GetWaveInstanceSourceMap() |
AudioDevice.h | ||
virtual bool HasCompressedAudioInfoClass
(
USoundWave* SoundWave |
Whether this SoundWave has an associated info class to decompress it | AudioDevice.h | |
bool Init
(
Audio::FDeviceId InDeviceID, |
Basic initialization of the platform agnostic layer of the audio system | AudioDevice.h | |
void * InitEffect
(
FSoundSource* Source |
Platform dependent call to init effect data on a sound source | AudioDevice.h | |
virtual bool InitializeHardware() |
Starts up any platform specific hardware/APIs | AudioDevice.h | |
void InitSoundClasses() |
Set up the sound class hierarchy | AudioDevice.h | |
virtual void InitSoundSubmixes() |
Initializes sound submixes. | AudioDevice.h | |
void InvalidateCachedInteriorVolumes() |
When the set of Audio volumes have changed invalidate the cached values of active sounds | AudioDevice.h | |
bool IsAudioDeviceMuted() |
AudioDevice.h | ||
bool IsBakedAnalaysisQueryingEnabled() |
Returns if baked analysis querying is enabled. | AudioDevice.h | |
virtual bool IsExernalBackgroundSoundActive() |
Check if any background music or sound is playing through the audio device | AudioDevice.h | |
bool IsHRTFDisabled() |
Whether or not HRTF is disabled. | AudioDevice.h | |
bool IsHRTFEnabledForAll() |
Whether or not HRTF spatialization is enabled for all. | AudioDevice.h | |
bool IsMainAudioDevice() |
AudioDevice.h | ||
bool IsModulationPluginEnabled() |
Whether or not there's a modulation plugin enabled. | AudioDevice.h | |
virtual bool IsNonRealtime() |
AudioDevice.h | ||
bool IsOcclusionPluginEnabled() |
Whether or not there's an occlusion plugin enabled. | AudioDevice.h | |
bool IsPendingStop
(
FActiveSound* ActiveSound |
Whether the provided ActiveSound is currently pending to stop | AudioDevice.h | |
bool IsReverbPluginEnabled() |
Whether or not there's a reverb plugin enabled. | AudioDevice.h | |
bool IsSourceDataOverridePluginEnabled() |
AudioDevice.h | ||
bool IsSpatializationPluginEnabled() |
Whether or not there's a spatialization plugin enabled. | AudioDevice.h | |
bool IsStoppingVoicesEnabled() |
Returns if stopping voices is enabled. | AudioDevice.h | |
bool IsUsingListenerAttenuationOverride
(
int32 ListenerIndex |
Returns if the specific listener is using an attenuation override position. | AudioDevice.h | |
bool LocationIsAudible
(
const FVector& Location, |
Checks to see if a coordinate is within a distance of a specific listener | AudioDevice.h | |
bool LocationIsAudible
(
const FVector& Location, |
Checks to see if a coordinate is within a distance of any listener | AudioDevice.h | |
void NotifyActiveSoundOcclusionTraceDone
(
FActiveSound* ActiveSound, |
Notify that a pending async occlusion trace finished on the active sound. | AudioDevice.h | |
void NotifyPendingDelete
(
FActiveSound& ActiveSound |
Notifies subsystems an active sound is about to be deleted (called on audio thread) - Deprecated, see NotifySubsystemsActiveSoundDeleting | AudioDevice.h | |
void OnBeginPIE
(
const bool bIsSimulating |
Deals with anything audio related that should happen when PIE starts | AudioDevice.h | |
void OnDeviceCreated
(
Audio::FDeviceId InDeviceID |
Called after FAudioDevice creation and init | AudioDevice.h | |
void OnDeviceDestroyed
(
Audio::FDeviceId InDeviceID |
Called before FAudioDevice teardown | AudioDevice.h | |
void OnEndPIE
(
const bool bIsSimulating |
Deals with anything audio related that should happen when PIE ends | AudioDevice.h | |
void OnPreGarbageCollect() |
AudioDevice.h | ||
void PauseActiveSound
(
uint64 AudioComponentID, |
Pauses the active sound for the specified audio component | AudioDevice.h | |
void PlaySoundAtLocation
(
USoundBase* Sound, |
As above, but supporting move semantics to reduce copying of Params | AudioDevice.h | |
void PlaySoundAtLocation
(
USoundBase* Sound, |
Plays a sound at the given location without creating an audio component. | AudioDevice.h | |
bool PlayWhenSilentEnabled() |
Whether play when silent is enabled for all sounds associated with this audio device | AudioDevice.h | |
void PopSoundMixModifier
(
USoundMix* SoundMix, |
Pop a SoundMix from the Audio Device's list. | AudioDevice.h | |
virtual void Precache
(
USoundWave* SoundWave, |
Precaches the passed in sound node wave object.Precaches the passed in sound node wave object. | AudioDevice.h | |
void PrecacheStartupSounds() |
Precaches all existing sounds. Called when audio setup is complete | AudioDevice.h | |
void PushSoundMixModifier
(
USoundMix* SoundMix, |
Push a SoundMix onto the Audio Device's list. | AudioDevice.h | |
void RegisterPluginListener
(
const TAudioPluginListenerPtr PluginListener |
Registers a third party listener-observer to this audio device. | AudioDevice.h | |
void RegisterSoundClass
(
USoundClass* InSoundClass |
Registers a sound class with the audio device | AudioDevice.h | |
virtual void RegisterSoundSubmix
(
USoundSubmixBase* SoundSubmix, |
Registers the sound submix | AudioDevice.h | |
virtual void RegisterSubmixBufferListener
(
TSharedRef< ISubmixBufferListener, ESPMode::ThreadSafe > InSubmixBufferListener, |
Registers the provided submix buffer listener with the given submix. | AudioDevice.h | |
virtual void RegisterSubmixBufferListener
(
ISubmixBufferListener* InSubmixBufferListener, |
AudioDevice.h | ||
void RemoveActiveSound
(
FActiveSound* ActiveSound |
Removes an active sound from the active sounds array | AudioDevice.h | |
void RemoveAudioVolumeProxy
(
uint32 AudioVolumeID |
AudioDevice.h | ||
virtual void RemoveEnvelopeFollowerDelegate
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
bool RemovePostRenderDelegate
(
const FDelegateHandle& InHandle |
AudioDevice.h | ||
bool RemovePreRenderDelegate
(
const FDelegateHandle& InHandle |
AudioDevice.h | ||
void RemoveSoundMix
(
USoundMix* SoundMix |
Removes a sound mix - called when SoundMix is unloaded | AudioDevice.h | |
virtual void RemoveSpectralAnalysisDelegate
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
void ResetAudioVolumeProxyChangedState() |
AudioDevice.h | ||
void ResetInterpolation() |
Resets all interpolating values to defaults. | AudioDevice.h | |
virtual void ResumeContext() |
Resume any context related objects | AudioDevice.h | |
void RetriggerVirtualLoop
(
FAudioVirtualLoop& VirtualLoop |
Attempts to retrigger a provided loop | AudioDevice.h | |
void SendCommandToActiveSounds
(
uint64 InAudioComponentID, |
Performs an operation on all active sounds requested to execute by an audio component | AudioDevice.h | |
| AudioDevice.h | |||
void SetBaseSoundMix
(
USoundMix* SoundMix |
Sets a new sound mix and applies it to all appropriate sound classes | AudioDevice.h | |
void SetCanHaveMultipleActiveSounds
(
uint64 AudioComponentID, |
Set whether a given Audio Component ID should be allowed to have multiple associated Active Sounds | AudioDevice.h | |
bool SetCurrentSpatializationPlugin
(
FName PluginName |
Set and initialize the current Spatialization plugin (by name) | AudioDevice.h | |
void SetDefaultAudioSettings
(
UWorld* World, |
Sets the default reverb and interior settings for the provided world | AudioDevice.h | |
void SetDefaultBaseSoundMix
(
USoundMix* SoundMix |
Sets the Sound Mix that should be active by default | AudioDevice.h | |
void SetDeviceMuted
(
bool bMuted |
AudioDevice.h | ||
void SetGlobalFocusSettings
(
const FGlobalFocusSettings& NewFocusSettings |
AudioDevice.h | ||
void SetGlobalPitchModulation
(
float PitchScale, |
AudioDevice.h | ||
void SetHRTFDisabled
(
bool InIsHRTFDisabled |
AudioDevice.h | ||
void SetHRTFEnabledForAll
(
bool InbHRTFEnabledForAll |
AudioDevice.h | ||
void SetListener
(
UWorld* World, |
Sets the details about the listener | AudioDevice.h | |
void SetListenerAttenuationOverride
(
int32 ListenerIndex, |
Sets an override position for the specified listener to do attenuation calculations. | AudioDevice.h | |
void SetMaxChannels
(
int32 InMaxChannels |
Sets the maximum number of channels dynamically. | AudioDevice.h | |
void SetMaxChannelsScaled
(
float InScaledChannelCount |
Sets the maximum number of channels dynamically by scaled percentage. | AudioDevice.h | |
void SetMixDebugState
(
EDebugState DebugState |
AudioDevice.h | ||
void SetPlatformAudioHeadroom
(
float PlatformHeadRoom |
AudioDevice.h | ||
void SetSoundClassDistanceScale
(
USoundClass* InSoundClass, |
Overrides the attenuation scale used on a sound class. | AudioDevice.h | |
void SetSoundMixClassOverride
(
USoundMix* InSoundMix, |
Sets a sound class override in the given sound mix. | AudioDevice.h | |
| AudioDevice.h | |||
void SetSpatializationInterfaceEnabled
(
bool InbSpatializationInterfaceEnabled |
AudioDevice.h | ||
virtual void SetSubmixAutoDisable
(
USoundSubmix* InSoundSubmix, |
Set whether or not a submix is auto-disabled. | AudioDevice.h | |
virtual void SetSubmixAutoDisableTime
(
USoundSubmix* InSoundSubmix, |
Set what the auto-disable time is. | AudioDevice.h | |
virtual void SetSubmixDryLevel
(
USoundSubmix* InSoundSubmix, |
Set the wet-dry level of the given submix | AudioDevice.h | |
virtual void SetSubmixEffectChainOverride
(
USoundSubmix* InSoundSubmix, |
Sets a submix effect chain override for the given submix | AudioDevice.h | |
virtual void SetSubmixModulationBaseLevels
(
USoundSubmix* InSoundSubmix, |
AudioDevice.h | ||
virtual void SetSubmixOutputVolume
(
USoundSubmix* InSoundSubmix, |
Set the wet-dry level of the given submix | AudioDevice.h | |
virtual void SetSubmixWetDryLevel
(
USoundSubmix* InSoundSubmix, |
Set the wet-dry level of the given submix | AudioDevice.h | |
virtual void SetSubmixWetLevel
(
USoundSubmix* InSoundSubmix, |
Set the wet-dry level of the given submix | AudioDevice.h | |
void SetTransientMasterVolume
(
float TransientPrimaryVolume |
AudioDevice.h | ||
void SetTransientPrimaryVolume
(
float TransientPrimaryVolume |
AudioDevice.h | ||
void SetUseAttenuationForNonGameWorlds
(
bool bInUseAttenuationForNonGameWorlds |
Set whether or not we force the use of attenuation for non-game worlds (as by default we only care about game worlds) | AudioDevice.h | |
bool ShouldUseRealtimeDecompression
(
bool bForceFullDecompression, |
Returns true if a sound wave should be decompressed. | AudioDevice.h | |
bool SoundIsAudible
(
USoundBase* Sound, |
Checks if the given sound would be audible. | AudioDevice.h | |
bool SpatializationPluginInterfacesAvailable() |
AudioDevice.h | ||
virtual void StartEnvelopeFollowing
(
USoundSubmix* InSubmix |
This is called by a USoundSubmix to start envelope following on a submix isntance on this device. | AudioDevice.h | |
virtual void StartRecording
(
USoundSubmix* InSubmix, |
This is called by a USoundSubmix to start recording a submix instance on this device. | AudioDevice.h | |
virtual void StartSpectrumAnalysis
(
USoundSubmix* InSubmix, |
AudioDevice.h | ||
void StopActiveSound
(
uint64 AudioComponentID, |
Removes the active sound for the specified audio component | AudioDevice.h | |
void StopActiveSound
(
FActiveSound* ActiveSound, |
(Deprecated in favor of AddSoundToStop). Stops the active sound | AudioDevice.h | |
virtual void StopAllSounds
(
bool bShouldStopUISounds |
Stops all game sounds (and possibly UI) sounds | AudioDevice.h | |
virtual void StopEnvelopeFollowing
(
USoundSubmix* InSubmix |
This is called by a USoundSubmix when we stop envelope following a submix instance on this device. | AudioDevice.h | |
virtual Audio::FAlignedFloatBuffer & StopRecording
(
USoundSubmix* InSubmix, |
This is called by a USoundSubmix when we stop recording a submix on this device. | AudioDevice.h | |
void StopSoundsUsingResource
(
USoundWave* SoundWave, |
Stop any playing sounds that are using a particular SoundWave | AudioDevice.h | |
void StopSourcesUsingBuffer
(
FSoundBuffer* SoundBuffer |
Stops any sound sources which are using the given buffer. | AudioDevice.h | |
virtual void StopSpectrumAnalysis
(
USoundSubmix* InSubmix |
AudioDevice.h | ||
void StopTestComponent() |
AudioDevice.h | ||
virtual bool SupportsRealtimeDecompression() |
Whether this device supports realtime decompression of sound waves (i.e. DTYPE_RealTime) | AudioDevice.h | |
void Suspend
(
bool bGameTicking |
Suspend/resume all sounds (global pause for device suspend/resume, etc.) | AudioDevice.h | |
virtual void SuspendContext() |
Suspend any context related objects | AudioDevice.h | |
void Teardown() |
Tears down the audio device | AudioDevice.h | |
virtual void TeardownHardware() |
Shuts down any platform specific hardware/APIs | AudioDevice.h | |
void UnlinkActiveSoundFromComponent
(
const FActiveSound& InActiveSound |
Disables ActiveSound from responding to calls from its associated AudioComponent. | AudioDevice.h | |
void UnregisterPluginListener
(
const TAudioPluginListenerPtr PluginListener |
Unregisters a third party listener-observer to this audio device. | AudioDevice.h | |
void UnregisterSoundClass
(
USoundClass* SoundClass |
Unregisters a sound class | AudioDevice.h | |
virtual void UnregisterSoundSubmix
(
const USoundSubmixBase* SoundSubmix, |
Unregisters the sound submix | AudioDevice.h | |
virtual void UnregisterSubmixBufferListener
(
TSharedRef< ISubmixBufferListener, ESPMode::ThreadSafe > InSubmixBufferListener, |
Unregisters the provided submix buffer listener with the given submix. | AudioDevice.h | |
virtual void UnregisterSubmixBufferListener
(
ISubmixBufferListener* InSubmixBufferListener, |
AudioDevice.h | ||
void Update
(
bool bGameTicking |
The audio system's main "Tick" function | AudioDevice.h | |
void UpdateActiveSoundPlaybackTime
(
bool bIsTimeTicking |
Update the active sound playback time. This is done here to do after all audio is updated. | AudioDevice.h | |
void UpdateAudioVolumeProxy
(
const FAudioVolumeProxy& Proxy |
AudioDevice.h | ||
virtual void UpdateDeviceDeltaTime() |
Sets the update delta time for the audio frame | AudioDevice.h | |
void * UpdateEffect
(
FSoundSource* Source |
Platform dependent call to update the sound output with new parameters The audio system's main "Tick" function | AudioDevice.h | |
virtual void UpdateGameThread() |
Update called on game thread. | AudioDevice.h | |
virtual void UpdateHardware() |
Lets the platform any tick actions | AudioDevice.h | |
virtual void UpdateHardwareTiming() |
Updates timing information for hardware. | AudioDevice.h | |
virtual void UpdateSourceEffectChain
(
const uint32 SourceEffectChainId, |
Updates the source effect chain. Only implemented in audio mixer. | AudioDevice.h | |
virtual void UpdateSubmixModulationSettings
(
USoundSubmix* InSoundSubmix, |
AudioDevice.h | ||
virtual void UpdateSubmixModulationSettings
(
USoundSubmix* InSoundSubmix, |
AudioDevice.h | ||
virtual void UpdateSubmixProperties
(
USoundSubmixBase* InSubmix |
Updates the submix properties of any playing submix instances. | AudioDevice.h | |
void UpdateVirtualLoops
(
bool bForceUpdate |
AudioDevice.h | ||
virtual bool ValidateAPICall
(
const TCHAR* Function, |
Check for errors and output a human readable string | AudioDevice.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void HandlePause
(
bool bGameTicking, |
Handle pausing/unpausing of sources when entering or leaving pause mode, or global pause (like device suspend) | AudioDevice.h | |
void InitializeSubsystemCollection() |
Create our subsystem collection root object and initialize subsystems | AudioDevice.h | |
void InitSoundSources() |
Set up the initial sound sources Allows us to initialize sound source early on, allowing for render callback hookups for iOS Audio. | AudioDevice.h | |
bool IsInitialized() |
Whether the device was initialized. | AudioDevice.h | |
void NotifyAddActiveSound
(
FActiveSound& ActiveSound |
AudioDevice.h | ||
void NotifyAudioDevicePostRender
(
const FAudioDeviceRenderInfo& InInfo |
AudioDevice.h | ||
void NotifyAudioDevicePreRender
(
const FAudioDeviceRenderInfo& InInfo |
AudioDevice.h | ||
void NotifyPendingDeleteInternal
(
FActiveSound& ActiveSound |
AudioDevice.h | ||
void NotifySubsystemsActiveSoundCreated
(
FActiveSound& ActiveSound |
Notifies subsystems an active sound has just been added (called on audio thread). | AudioDevice.h | |
void NotifySubsystemsActiveSoundDeleting
(
FActiveSound& ActiveSound |
Notifies subsystems an active sound is about to be deleted (called on audio thread). | AudioDevice.h | |
void NotifySubsystemsSetOwner
(
FActiveSound& ActiveSound, |
AudioDevice.h | ||
void NotifySubsystemsVirtualizedSoundCreated
(
FActiveSound& ActiveSound |
Notifies subsystems a virtualized sound has just been added (called on audio thread). | AudioDevice.h | |
void NotifySubsystemsVirtualizedSoundDeleting
(
FActiveSound& ActiveSound |
Notifies subsystems a virtualized sound is about to be deleted (called on audio thread). | AudioDevice.h | |
| This is overridden in Audio::FMixerDevice to propogate listener information to the audio thread. | AudioDevice.h | ||
void StartSources
(
TArray< FWaveInstance* >& WaveInstances, |
Start and/or update any sources that have a high enough priority to play | AudioDevice.h | |
void StopSources
(
TArray< FWaveInstance* >& WaveInstances, |
Stop sources that need to be stopped, and touch the ones that need to be kept alive Stop sounds that are too low in priority to be played | AudioDevice.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static bool CanUseVRAudioDevice () |
Query if the editor is in VR Preview for the current play world. | AudioDevice.h | |
static UAudioComponent * CreateComponent
(
USoundBase* Sound, |
Creates an audio component to handle playing a sound. | AudioDevice.h | |
static int32 FindClosestListenerIndex
(
const FTransform& SoundTransform, |
Returns the index of the listener closest to the given sound transform | AudioDevice.h | |
static FAudioDeviceManager * GetAudioDeviceManager() |
Returns the audio device manager | AudioDevice.h | |
static FAudioDeviceHandle GetMainAudioDevice() |
Returns the main audio device of the engine | AudioDevice.h | |
static float GetMaxWorldDistance() |
Returns the global maximum distance used in the audio engine. | AudioDevice.h | |
static const FAudioQualitySettings & GetQualityLevelSettings() |
Returns the quality settings used by the default audio settings. | AudioDevice.h | |
static TSubsystemClass * GetSubsystem
(
const FAudioDeviceHandle& InHandle |
Get a Subsystem of specified type from the provided AudioDeviceHandle returns nullptr if the Subsystem cannot be found or the AudioDeviceHandle is invalid | AudioDevice.h | |
static bool IsOcclusionPluginLoaded() |
AudioDevice.h | ||
static bool IsReverbPluginLoaded() |
AudioDevice.h | ||
static bool IsSourceDataOverridePluginLoaded() |
AudioDevice.h | ||
static bool LegacyReverbDisabled() |
AudioDevice.h |