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

#include <IOSAudioDevice.h>

+ Inheritance diagram for FIOSAudioDevice:

Public Member Functions

 FIOSAudioDevice ()
 
virtual ~FIOSAudioDevice ()
 
AUGraph GetAudioUnitGraph () const
 
AUNode GetMixerNode () const
 
AudioUnit GetMixerUnit () const
 
AudioUnit GetOutputUnit () const
 
virtual void ResumeContext ()
 
virtual void SuspendContext ()
 
virtual bool Exec (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar= *GLog) override
 
virtual void UpdateDeviceDeltaTime () override
 
- Public Member Functions inherited from FAudioDevice
ENGINE_API UAudioComponentGetTestComponent (UWorld *InWorld)
 
ENGINE_API void StopTestComponent ()
 
ENGINE_API FAudioDevice ()
 
virtual ENGINE_API ~FAudioDevice ()
 
virtual void GetAudioDeviceList (TArray< FString > &OutAudioDeviceNames) const
 
ENGINE_API bool Init (Audio::FDeviceId InDeviceID, int32 InMaxSources, int32 BufferSizeOverride=INDEX_NONE, int32 NumBuffersOverride=INDEX_NONE)
 
ENGINE_API void OnDeviceCreated (Audio::FDeviceId InDeviceID)
 
ENGINE_API void OnDeviceDestroyed (Audio::FDeviceId InDeviceID)
 
ENGINE_API void Teardown ()
 
ENGINE_API void Deinitialize ()
 
ENGINE_API void Update (bool bGameTicking)
 
virtual void UpdateGameThread ()
 
ENGINE_API void Suspend (bool bGameTicking)
 
virtual ENGINE_API void CountBytes (FArchive &Ar)
 
ENGINE_API void AddReferencedObjects (FReferenceCollector &Collector)
 
ENGINE_API int32 GetSortedActiveWaveInstances (TArray< FWaveInstance * > &WaveInstances, const ESortedActiveWaveGetType::Type GetType)
 
ENGINE_API void UpdateActiveSoundPlaybackTime (bool bIsTimeTicking)
 
virtual void FadeOut ()
 
virtual void FadeIn ()
 
ENGINE_API void Flush (UWorld *WorldToFlush, bool bClearActivatedReverb=true)
 
virtual ENGINE_API void FlushExtended (UWorld *WorldToFlush, bool bClearActivatedReverb)
 
virtual void FlushAudioRenderingCommands (bool bPumpSynchronously=false)
 
ENGINE_API void OnPreGarbageCollect ()
 
ENGINE_API void StopSoundsUsingResource (USoundWave *SoundWave, TArray< UAudioComponent * > *StoppedComponents=nullptr)
 
virtual ENGINE_API void Precache (USoundWave *SoundWave, bool bSynchronous=false, bool bTrackMemory=true, bool bForceFullDecompression=false)
 
ENGINE_API float GetCompressionDurationThreshold (const FSoundGroup &SoundGroup)
 
ENGINE_API bool ShouldUseRealtimeDecompression (bool bForceFullDecompression, const FSoundGroup &SoundGroup, USoundWave *SoundWave, float CompressedDurationThreshold) const
 
ENGINE_API void PrecacheStartupSounds ()
 
ENGINE_API void SetMaxChannels (int32 InMaxChannels)
 
ENGINE_API void SetMaxChannelsScaled (float InScaledChannelCount)
 
ENGINE_API int32 GetMaxChannels () const
 
ENGINE_API int32 GetMaxSources () const
 
ENGINE_API TRange< floatGetGlobalPitchRange () const
 
ENGINE_API void StopSourcesUsingBuffer (FSoundBuffer *SoundBuffer)
 
virtual ENGINE_API void StopAllSounds (bool bShouldStopUISounds=false)
 
ENGINE_API void SetListener (UWorld *World, int32 InListenerIndex, const FTransform &ListenerTransform, float InDeltaSeconds)
 
ENGINE_API void SetListenerAttenuationOverride (int32 ListenerIndex, const FVector AttenuationPosition)
 
ENGINE_API void ClearListenerAttenuationOverride (int32 ListenerIndex)
 
const TArray< FListener > & GetListeners () const
 
UReverbEffectGetCurrentReverbEffect () const
 
ENGINE_API void PlaySoundAtLocation (USoundBase *Sound, UWorld *World, float VolumeMultiplier, float PitchMultiplier, float StartTime, const FVector &Location, const FRotator &Rotation, USoundAttenuation *AttenuationSettings=nullptr, USoundConcurrency *ConcurrencySettings=nullptr, const TArray< FAudioParameter > *Params=nullptr, const AActor *OwningActor=nullptr)
 
ENGINE_API void PlaySoundAtLocation (USoundBase *Sound, UWorld *World, float VolumeMultiplier, float PitchMultiplier, float StartTime, const FVector &Location, const FRotator &Rotation, USoundAttenuation *AttenuationSettings, USoundConcurrency *Concurrency, TArray< FAudioParameter > &&Params, const AActor *OwningActor=nullptr)
 
ENGINE_API void AddNewActiveSound (const FActiveSound &ActiveSound, const TArray< FAudioParameter > *InDefaultParams=nullptr, const FString *EventLogID=nullptr)
 
ENGINE_API void AddNewActiveSound (TSharedRef< FActiveSound > ActiveSound, TArray< FAudioParameter > &&InDefaultParams, const FString *EventLogID=nullptr)
 
ENGINE_API void AddNewActiveSound (const FActiveSound &ActiveSound, TArray< FAudioParameter > &&InDefaultParams)
 
ENGINE_API void RetriggerVirtualLoop (FAudioVirtualLoop &VirtualLoop)
 
ENGINE_API void StopActiveSound (uint64 AudioComponentID, const FString *EventLogID=nullptr)
 
ENGINE_API void StopActiveSound (FActiveSound *ActiveSound, const FString *EventLogID=nullptr)
 
ENGINE_API void PauseActiveSound (uint64 AudioComponentID, const bool bInIsPaused)
 
ENGINE_API void NotifyActiveSoundOcclusionTraceDone (FActiveSound *ActiveSound, bool bIsOccluded)
 
ENGINE_API FActiveSoundFindActiveSound (uint64 AudioComponentID)
 
ENGINE_API bool CanHaveMultipleActiveSounds (uint64 AudioComponentID) const
 
ENGINE_API void SetCanHaveMultipleActiveSounds (uint64 AudioComponentID, bool InCanHaveMultipleActiveSounds)
 
ENGINE_API void RemoveActiveSound (FActiveSound *ActiveSound)
 
ENGINE_API void AddAudioVolumeProxy (const FAudioVolumeProxy &Proxy)
 
ENGINE_API void RemoveAudioVolumeProxy (uint32 AudioVolumeID)
 
ENGINE_API void UpdateAudioVolumeProxy (const FAudioVolumeProxy &Proxy)
 
ENGINE_API void GetAudioVolumeSettings (const uint32 WorldID, const FVector &Location, FAudioVolumeSettings &OutSettings) const
 
ENGINE_API void ResetAudioVolumeProxyChangedState ()
 
ENGINE_API void GatherInteriorData (FActiveSound &ActiveSound, FSoundParseParameters &ParseParams) const
 
ENGINE_API void ApplyInteriorSettings (FActiveSound &ActiveSound, FSoundParseParameters &ParseParams) const
 
void NotifyPendingDelete (FActiveSound &ActiveSound) const
 
ENGINE_API bool GetDefaultAudioSettings (uint32 WorldID, FReverbSettings &OutReverbSettings, FInteriorSettings &OutInteriorSettings) const
 
ENGINE_API void SetDefaultAudioSettings (UWorld *World, const FReverbSettings &DefaultReverbSettings, const FInteriorSettings &DefaultInteriorSettings)
 
EDebugState GetMixDebugState () const
 
ENGINE_API void SetMixDebugState (EDebugState DebugState)
 
ENGINE_API void InitSoundClasses ()
 
ENGINE_API void RegisterSoundClass (USoundClass *InSoundClass)
 
ENGINE_API void UnregisterSoundClass (USoundClass *SoundClass)
 
virtual void InitSoundSubmixes ()
 
virtual void RegisterSoundSubmix (USoundSubmixBase *SoundSubmix, bool bInit)
 
virtual void UnregisterSoundSubmix (const USoundSubmixBase *SoundSubmix, const bool bReparentChildren)
 
virtual ENGINE_API USoundSubmixGetMainSubmixObject () const
 
virtual ENGINE_API void RegisterSubmixBufferListener (ISubmixBufferListener *InSubmixBufferListener, USoundSubmix *SoundSubmix=nullptr)
 
virtual ENGINE_API void UnregisterSubmixBufferListener (ISubmixBufferListener *InSubmixBufferListener, USoundSubmix *SoundSubmix=nullptr)
 
virtual ENGINE_API void RegisterSubmixBufferListener (TSharedRef< ISubmixBufferListener, ESPMode::ThreadSafe > InSubmixBufferListener, USoundSubmix &SoundSubmix)
 
virtual ENGINE_API void UnregisterSubmixBufferListener (TSharedRef< ISubmixBufferListener, ESPMode::ThreadSafe > InSubmixBufferListener, USoundSubmix &SoundSubmix)
 
virtual ENGINE_API Audio::FPatchOutputStrongPtr AddPatchForSubmix (uint32 InObjectId, float InPatchGain)
 
virtual ENGINE_API Audio::FPatchInput AddPatchInputForAudioBus (uint32 InAudioBusId, int32 InFrames, int32 InChannels, float InGain=1.f)
 
virtual ENGINE_API Audio::FPatchOutputStrongPtr AddPatchOutputForAudioBus (uint32 InAudioBusId, int32 InFrames, int32 InChannels, float InGain=1.f)
 
ENGINE_API FSoundClassPropertiesGetSoundClassCurrentProperties (USoundClass *InSoundClass)
 
ENGINE_API FSoundClassDynamicPropertiesGetSoundClassDynamicProperties (USoundClass *InSoundClass)
 
ENGINE_API bool LocationIsAudible (const FVector &Location, const float MaxDistance) const
 
ENGINE_API bool LocationIsAudible (const FVector &Location, int32 ListenerIndex, const float MaxDistance) const
 
ENGINE_API float GetDistanceToNearestListener (const FVector &Location) const
 
ENGINE_API bool GetDistanceSquaredToListener (const FVector &Location, int32 ListenerIndex, float &OutSqDistance) const
 
ENGINE_API bool GetDistanceSquaredToNearestListener (const FVector &Location, float &OutSqDistance) const
 
ENGINE_API bool GetListenerPosition (int32 ListenerIndex, FVector &OutPosition, bool bAllowOverride) const
 
ENGINE_API bool GetListenerTransform (int32 ListenerIndex, FTransform &OutTransform) const
 
ENGINE_API bool GetListenerWorldID (int32 ListenerIndex, uint32 &OutWorldID) const
 
ENGINE_API void SetDefaultBaseSoundMix (USoundMix *SoundMix)
 
ENGINE_API void RemoveSoundMix (USoundMix *SoundMix)
 
ENGINE_API void ResetInterpolation ()
 
ENGINE_API void EnableRadioEffect (bool bEnable=false)
 
ENGINE_API void SetBaseSoundMix (USoundMix *SoundMix)
 
ENGINE_API void PushSoundMixModifier (USoundMix *SoundMix, bool bIsPassive=false, bool bIsRetrigger=false)
 
ENGINE_API void SetSoundMixClassOverride (USoundMix *InSoundMix, USoundClass *InSoundClass, float Volume, float Pitch, float FadeInTime, bool bApplyToChildren)
 
ENGINE_API void ClearSoundMixClassOverride (USoundMix *InSoundMix, USoundClass *InSoundClass, float FadeOutTime)
 
ENGINE_API void PopSoundMixModifier (USoundMix *SoundMix, bool bIsPassive=false)
 
ENGINE_API void ClearSoundMixModifier (USoundMix *SoundMix)
 
ENGINE_API void ClearSoundMixModifiers ()
 
ENGINE_API void ActivateReverbEffect (UReverbEffect *ReverbEffect, FName TagName, float Priority, float Volume, float FadeTime)
 
ENGINE_API void DeactivateReverbEffect (FName TagName)
 
virtual bool SupportsRealtimeDecompression () const
 
virtual bool DisablePCMAudioCaching () const
 
virtual bool ValidateAPICall (const TCHAR *Function, uint32 ErrorCode)
 
const TArray< FActiveSound * > & GetActiveSounds () const
 
ENGINE_API void InvalidateCachedInteriorVolumes () const
 
ENGINE_API bool IsHRTFEnabledForAll () const
 
void SetHRTFEnabledForAll (bool InbHRTFEnabledForAll)
 
ENGINE_API bool IsHRTFDisabled () const
 
void SetHRTFDisabled (bool InIsHRTFDisabled)
 
void SetSpatializationInterfaceEnabled (bool InbSpatializationInterfaceEnabled)
 
ENGINE_API void RegisterPluginListener (const TAudioPluginListenerPtr PluginListener)
 
ENGINE_API void UnregisterPluginListener (const TAudioPluginListenerPtr PluginListener)
 
ENGINE_API bool IsAudioDeviceMuted () const
 
ENGINE_API void SetDeviceMuted (bool bMuted)
 
ENGINE_API void GetAzimuth (const FAttenuationListenerData &OutListenerData, float &OutAzimuth, float &AbsoluteAzimuth) const
 
ENGINE_API float GetFocusFactor (const float Azimuth, const FSoundAttenuationSettings &AttenuationSettings) const
 
ENGINE_API void GetMaxDistanceAndFocusFactor (USoundBase *Sound, const UWorld *World, const FVector &Location, const FSoundAttenuationSettings *AttenuationSettingsToApply, float &OutMaxDistance, float &OutFocusFactor)
 
ENGINE_API bool SoundIsAudible (USoundBase *Sound, const UWorld *World, const FVector &Location, const FSoundAttenuationSettings *AttenuationSettingsToApply, float MaxDistance, float FocusFactor) const
 
ENGINE_API int32 FindClosestListenerIndex (const FTransform &SoundTransform) const
 
ENGINE_API int32 FindClosestListenerIndex (const FVector &Position, float &OutSqDistance, bool AllowAttenuationOverrides) const
 
ENGINE_API void UnlinkActiveSoundFromComponent (const FActiveSound &InActiveSound)
 
virtual double GetAudioTime () const
 
virtual void EnableDebugAudioOutput ()
 
ENGINE_API float GetLowPassFilterResonance () const
 
virtual int32 GetNumActiveSources () const
 
int32 GetNumFreeSources () const
 
float GetSampleRate () const
 
int32 GetBufferLength () const
 
int32 GetNumBuffers () const
 
bool IsSpatializationPluginEnabled () const
 
ENGINE_API bool SetCurrentSpatializationPlugin (FName PluginName)
 
ENGINE_API TArray< FNameGetAvailableSpatializationPluginNames () const
 
TAudioSpatializationPtr GetSpatializationPluginInterface ()
 
ENGINE_API FAudioSpatializationInterfaceInfo GetCurrentSpatializationPluginInterfaceInfo ()
 
ENGINE_API bool SpatializationPluginInterfacesAvailable ()
 
bool IsModulationPluginEnabled () const
 
bool IsOcclusionPluginEnabled () const
 
bool IsReverbPluginEnabled () const
 
bool IsSourceDataOverridePluginEnabled () const
 
bool IsStoppingVoicesEnabled () const
 
bool IsBakedAnalaysisQueryingEnabled () const
 
ENGINE_API void SendCommandToActiveSounds (uint64 InAudioComponentID, TUniqueFunction< void(FActiveSound &)> InFunc, const TStatId InStatId=TStatId())
 
virtual bool IsNonRealtime () const
 
virtual void UpdateSourceEffectChain (const uint32 SourceEffectChainId, const TArray< FSourceEffectChainEntry > &SourceEffectChain, const bool bPlayEffectChainTails)
 
virtual bool GetCurrentSourceEffectChain (const uint32 SourceEffectChainId, TArray< FSourceEffectChainEntry > &OutCurrentSourceEffectChainEntries)
 
virtual void UpdateSubmixProperties (USoundSubmixBase *InSubmix)
 
virtual void StartRecording (USoundSubmix *InSubmix, float ExpectedRecordingDuration)
 
virtual Audio::FAlignedFloatBufferStopRecording (USoundSubmix *InSubmix, float &OutNumChannels, float &OutSampleRate)
 
virtual void StartEnvelopeFollowing (USoundSubmix *InSubmix)
 
virtual void StopEnvelopeFollowing (USoundSubmix *InSubmix)
 
virtual void SetSubmixWetDryLevel (USoundSubmix *InSoundSubmix, float InOutputVolume, float InWetLevel, float InDryLevel)
 
virtual void SetSubmixAutoDisable (USoundSubmix *InSoundSubmix, bool bInAutoDisable)
 
virtual void SetSubmixAutoDisableTime (USoundSubmix *InSoundSubmix, float InDisableTime)
 
virtual void UpdateSubmixModulationSettings (USoundSubmix *InSoundSubmix, USoundModulatorBase *InOutputModulation, USoundModulatorBase *InWetLevelModulation, USoundModulatorBase *InDryLevelModulation)
 
virtual void UpdateSubmixModulationSettings (USoundSubmix *InSoundSubmix, const TSet< TObjectPtr< USoundModulatorBase > > &InOutputModulation, const TSet< TObjectPtr< USoundModulatorBase > > &InWetLevelModulation, const TSet< TObjectPtr< USoundModulatorBase > > &InDryLevelModulation)
 
virtual void SetSubmixModulationBaseLevels (USoundSubmix *InSoundSubmix, float InVolumeModBase, float InWetModBase, float InDryModBase)
 
virtual void SetSubmixOutputVolume (USoundSubmix *InSoundSubmix, float InOutputVolume)
 
virtual void SetSubmixWetLevel (USoundSubmix *InSoundSubmix, float InWetLevel)
 
virtual void SetSubmixDryLevel (USoundSubmix *InSoundSubmix, float InDryLevel)
 
virtual void SetSubmixEffectChainOverride (USoundSubmix *InSoundSubmix, const TArray< FSoundEffectSubmixPtr > &InSubmixEffectChain, float InCrossfadeTime)
 
virtual void ClearSubmixEffectChainOverride (USoundSubmix *InSoundSubmix, float InCrossfadeTime)
 
virtual ENGINE_API void AddEnvelopeFollowerDelegate (USoundSubmix *InSubmix, const FOnSubmixEnvelopeBP &OnSubmixEnvelopeBP)
 
virtual ENGINE_API void RemoveEnvelopeFollowerDelegate (USoundSubmix *InSubmix, const FOnSubmixEnvelopeBP &OnSubmixEnvelopeBP)
 
virtual ENGINE_API void StartSpectrumAnalysis (USoundSubmix *InSubmix, const FSoundSpectrumAnalyzerSettings &InSettings)
 
virtual ENGINE_API void StopSpectrumAnalysis (USoundSubmix *InSubmix)
 
virtual ENGINE_API void GetMagnitudesForFrequencies (USoundSubmix *InSubmix, const TArray< float > &InFrequencies, TArray< float > &OutMagnitudes)
 
virtual ENGINE_API void GetPhasesForFrequencies (USoundSubmix *InSubmix, const TArray< float > &InFrequencies, TArray< float > &OutPhases)
 
virtual ENGINE_API void AddSpectralAnalysisDelegate (USoundSubmix *InSubmix, const FSoundSpectrumAnalyzerDelegateSettings &InDelegateSettings, const FOnSubmixSpectralAnalysisBP &OnSubmixSpectralAnalysisBP)
 
virtual ENGINE_API void RemoveSpectralAnalysisDelegate (USoundSubmix *InSubmix, const FOnSubmixSpectralAnalysisBP &OnSubmixSpectralAnalysisBP)
 
ENGINE_API voidInitEffect (FSoundSource *Source)
 
ENGINE_API voidUpdateEffect (FSoundSource *Source)
 
ENGINE_API void DestroyEffect (FSoundSource *Source)
 
FAudioEffectsManagerGetEffects ()
 
const FAudioEffectsManagerGetEffects () const
 
const TMap< USoundMix *, FSoundMixState > & GetSoundMixModifiers () const
 
const TArray< USoundMix * > & GetPrevPassiveSoundMixModifiers () const
 
USoundMixGetDefaultBaseSoundMixModifier ()
 
void SetSoundMixModifiers (const TMap< USoundMix *, FSoundMixState > &InSoundMixModifiers, const TArray< USoundMix * > &InPrevPassiveSoundMixModifiers, USoundMix *InDefaultBaseSoundMix)
 
ENGINE_API FDelegateHandle AddPreRenderDelegate (const FOnAudioDevicePreRender::FDelegate &InDelegate)
 
ENGINE_API bool RemovePreRenderDelegate (const FDelegateHandle &InHandle)
 
ENGINE_API FDelegateHandle AddPostRenderDelegate (const FOnAudioDevicePostRender::FDelegate &InDelegate)
 
ENGINE_API bool RemovePostRenderDelegate (const FDelegateHandle &InHandle)
 
virtual void UpdateHardwareTiming ()
 
ENGINE_API void AddSoundToStop (FActiveSound *SoundToStop)
 
ENGINE_API bool IsPendingStop (FActiveSound *ActiveSound)
 
ENGINE_API FVector GetListenerTransformedDirection (const FVector &Position, float *OutDistance)
 
ENGINE_API float GetDeviceDeltaTime () const
 
ENGINE_API float GetGameDeltaTime () const
 
ENGINE_API bool IsUsingListenerAttenuationOverride (int32 ListenerIndex) const
 
ENGINE_API const FVectorGetListenerAttenuationOverride (int32 ListenerIndex) const
 
ENGINE_API void UpdateVirtualLoops (bool bForceUpdate)
 
double GetAudioClock () const
 
virtual double GetInterpolatedAudioClock () const
 
ENGINE_API void AddVirtualLoop (const FAudioVirtualLoop &InVirtualLoop)
 
bool AreStartupSoundsPreCached () const
 
float GetTransientMasterVolume () const
 
ENGINE_API void SetTransientMasterVolume (float TransientPrimaryVolume)
 
float GetMasterVolume () const
 
float GetTransientPrimaryVolume () const
 
ENGINE_API void SetTransientPrimaryVolume (float TransientPrimaryVolume)
 
float GetPrimaryVolume () const
 
ENGINE_API FSoundSourceGetSoundSource (FWaveInstance *WaveInstance) const
 
ENGINE_API const FGlobalFocusSettingsGetGlobalFocusSettings () const
 
ENGINE_API void SetGlobalFocusSettings (const FGlobalFocusSettings &NewFocusSettings)
 
const FDynamicParameterGetGlobalPitchScale () const
 
ENGINE_API void SetGlobalPitchModulation (float PitchScale, float TimeSec)
 
ENGINE_API float ClampPitch (float InPitchScale) const
 
ENGINE_API void SetSoundClassDistanceScale (USoundClass *InSoundClass, float DistanceScale, float TimeSec)
 
float GetPlatformAudioHeadroom () const
 
ENGINE_API void SetPlatformAudioHeadroom (float PlatformHeadRoom)
 
ENGINE_API const TMap< FName, FActivatedReverb > & GetActiveReverb () const
 
bool PlayWhenSilentEnabled () const
 
ENGINE_API bool IsMainAudioDevice () const
 
void SetUseAttenuationForNonGameWorlds (bool bInUseAttenuationForNonGameWorlds)
 
ENGINE_API const TArray< FWaveInstance * > & GetActiveWaveInstances () const
 
float GetDefaultReverbSendLevel () const
 
ENGINE_API const TMap< FWaveInstance *, FSoundSource * > & GetWaveInstanceSourceMap () const
 
ENGINE_API FName GetAudioStateProperty (const FName &PropertyName) const
 
ENGINE_API void SetAudioStateProperty (const FName &PropertyName, const FName &PropertyValue)
 
UAudioEngineSubsystemGetSubsystemBase (TSubclassOf< UAudioEngineSubsystem > SubsystemClass) const
 
template<typename TSubsystemClass >
TSubsystemClassGetSubsystem () const
 
template<typename TSubsystemClass >
TArray< TSubsystemClass * > GetSubsystemArrayCopy () const
 
template<typename TSubsystemClass >
void ForEachSubsystem (TFunctionRef< void(TSubsystemClass *)> Operation) const
 
- Public Member Functions inherited from FExec
virtual CORE_API ~FExec ()
 

Static Public Member Functions

static void IncrementSuspendCounter ()
 
static void DecrementSuspendCounter ()
 
- Static Public Member Functions inherited from FAudioDevice
static ENGINE_API const FAudioQualitySettingsGetQualityLevelSettings ()
 
static ENGINE_API bool LegacyReverbDisabled ()
 
static ENGINE_API UAudioComponentCreateComponent (USoundBase *Sound, const FCreateComponentParams &Params=FCreateComponentParams())
 
static ENGINE_API float GetMaxWorldDistance ()
 
static ENGINE_API int32 FindClosestListenerIndex (const FTransform &SoundTransform, const TArray< FListener > &InListeners)
 
static ENGINE_API FAudioDeviceHandle GetMainAudioDevice ()
 
static ENGINE_API FAudioDeviceManagerGetAudioDeviceManager ()
 
static ENGINE_API bool IsOcclusionPluginLoaded ()
 
static ENGINE_API bool IsReverbPluginLoaded ()
 
static ENGINE_API bool IsSourceDataOverridePluginLoaded ()
 
static ENGINE_API bool CanUseVRAudioDevice ()
 
template<typename TSubsystemClass >
static TSubsystemClassGetSubsystem (const FAudioDeviceHandle &InHandle)
 

Protected Member Functions

virtual bool InitializeHardware () override
 
virtual void TeardownHardware () override
 
virtual void UpdateHardware () override
 
virtual FAudioEffectsManagerCreateEffectsManager () override
 
virtual FSoundSourceCreateSoundSource () override
 
void GetHardwareSampleRate (double &OutSampleRate)
 
bool SetHardwareSampleRate (const double &InSampleRate)
 
bool SetAudioSessionActive (bool bActive)
 
virtual bool IsExernalBackgroundSoundActive () override
 
virtual FAudioPlatformSettings GetPlatformSettings () const override
 
- Protected Member Functions inherited from FAudioDevice
ENGINE_API void NotifySubsystemsActiveSoundCreated (FActiveSound &ActiveSound) const
 
ENGINE_API void NotifySubsystemsActiveSoundDeleting (FActiveSound &ActiveSound) const
 
ENGINE_API void NotifySubsystemsVirtualizedSoundCreated (FActiveSound &ActiveSound) const
 
ENGINE_API void NotifySubsystemsVirtualizedSoundDeleting (FActiveSound &ActiveSound) const
 
void NotifyAddActiveSound (FActiveSound &ActiveSound) const
 
void NotifyPendingDeleteInternal (FActiveSound &ActiveSound) const
 
ENGINE_API void NotifySubsystemsSetOwner (FActiveSound &ActiveSound, const UObject *Owner) const
 
ENGINE_API void InitSoundSources ()
 
ENGINE_API void InitializeSubsystemCollection ()
 
ENGINE_API void HandlePause (bool bGameTicking, bool bGlobalPause=false)
 
ENGINE_API void StopSources (TArray< FWaveInstance * > &WaveInstances, int32 FirstActiveIndex)
 
ENGINE_API void StartSources (TArray< FWaveInstance * > &WaveInstances, int32 FirstActiveIndex, bool bGameTicking)
 
virtual void OnListenerUpdated (const TArray< FListener > &InListeners)
 
ENGINE_API void NotifyAudioDevicePreRender (const FAudioDeviceRenderInfo &InInfo)
 
ENGINE_API void NotifyAudioDevicePostRender (const FAudioDeviceRenderInfo &InInfo)
 
bool IsInitialized () const
 
- Protected Member Functions inherited from FExec
virtual bool Exec_Runtime (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 
virtual bool Exec_Dev (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 
virtual bool Exec_Editor (UWorld *InWorld, const TCHAR *Cmd, FOutputDevice &Ar)
 

Friends

class FIOSAudioSoundBuffer
 
class FIOSAudioSoundSource
 

Additional Inherited Members

- Public Attributes inherited from FAudioDevice
int32 NumStoppingSources
 
int32 SampleRate
 
FAudioPlatformSettings PlatformSettings
 
int32 NumPrecacheFrames
 
Audio::FDeviceId DeviceID
 
TAudioSpatializationPtr SpatializationPluginInterface = nullptr
 
TAudioSourceDataOverridePtr SourceDataOverridePluginInterface
 
TAudioReverbPtr ReverbPluginInterface
 
TAudioOcclusionPtr OcclusionInterface
 
TAudioModulationPtr ModulationInterface
 
TArray< TAudioPluginListenerPtrPluginListeners
 
TArray< FListenerProxyListenerProxies
 
uint8 bDisableAudioCaching:1 = false
 
uint8 bIsAudioDeviceHardwareInitialized: 1
 
uint8 bIsStoppingVoicesEnabled: 1
 
uint8 bIsBakedAnalysisEnabled: 1
 
uint8 bAudioMixerModuleLoaded: 1
 
uint8 bOcclusionIsExternalSend:1
 
uint8 bReverbIsExternalSend:1
 
uint8 bSpatializationIsExternalSend:1
 
int32 MaxChannelsSupportedBySpatializationPlugin
 
- Protected Attributes inherited from FAudioDevice
FDelegateHandle DeviceCreatedHandle
 
FDelegateHandle DeviceDestroyedHandle
 
FCriticalSection RenderStateCallbackListCritSec
 
FOnAudioDevicePreRender OnAudioDevicePreRender
 
FOnAudioDevicePostRender OnAudioDevicePostRender
 
FName CurrentSpatializationPluginInterfaceName
 
TArray< FAudioSpatializationInterfaceInfoSpatializationInterfaces
 
FAudioSpatializationInterfaceInfoCurrentSpatializationInterfaceInfoPtr = nullptr
 
FAudioPluginInitializationParams PluginInitializationParams
 
TArray< FListenerListeners
 
TArray< FSoundSource * > Sources
 
TArray< FSoundSource * > FreeSources
 
FAudioEffectsManagerEffects
 
double AudioClock
 
uint8 bAllowCenterChannel3DPanning: 1
 
float DeviceDeltaTime
 

Detailed Description

IOSAudio implementation of an Unreal audio device.

Constructor & Destructor Documentation

◆ FIOSAudioDevice()

FIOSAudioDevice::FIOSAudioDevice ( )

◆ ~FIOSAudioDevice()

virtual FIOSAudioDevice::~FIOSAudioDevice ( )
inlinevirtual

Member Function Documentation

◆ CreateEffectsManager()

FAudioEffectsManager * FIOSAudioDevice::CreateEffectsManager ( )
overrideprotectedvirtual

Creates a new platform specific sound source

Reimplemented from FAudioDevice.

◆ CreateSoundSource()

FSoundSource * FIOSAudioDevice::CreateSoundSource ( )
overrideprotectedvirtual

Creates a new platform specific sound source

Implements FAudioDevice.

◆ DecrementSuspendCounter()

void FIOSAudioDevice::DecrementSuspendCounter ( )
static

◆ Exec()

bool FIOSAudioDevice::Exec ( UWorld InWorld,
const TCHAR Cmd,
FOutputDevice Ar = *GLog 
)
overridevirtual

Exec handler

Parameters
InWorldWorld context
CmdCommand to parse
ArOutput device to log to
Returns
true if command was handled, false otherwise

Reimplemented from FExec.

◆ GetAudioUnitGraph()

AUGraph FIOSAudioDevice::GetAudioUnitGraph ( ) const
inline

◆ GetHardwareSampleRate()

void FIOSAudioDevice::GetHardwareSampleRate ( double OutSampleRate)
protected

Audio Session management

◆ GetMixerNode()

AUNode FIOSAudioDevice::GetMixerNode ( ) const
inline

◆ GetMixerUnit()

AudioUnit FIOSAudioDevice::GetMixerUnit ( ) const
inline

◆ GetOutputUnit()

AudioUnit FIOSAudioDevice::GetOutputUnit ( ) const
inline

◆ GetPlatformSettings()

FAudioPlatformSettings FIOSAudioDevice::GetPlatformSettings ( ) const
overrideprotectedvirtual

Retrieves the platform settings

Reimplemented from FAudioDevice.

◆ IncrementSuspendCounter()

void FIOSAudioDevice::IncrementSuspendCounter ( )
static

◆ InitializeHardware()

bool FIOSAudioDevice::InitializeHardware ( )
overrideprotectedvirtual

Starts up any platform specific hardware/APIs

Reimplemented from FAudioDevice.

◆ IsExernalBackgroundSoundActive()

bool FIOSAudioDevice::IsExernalBackgroundSoundActive ( )
overrideprotectedvirtual

Check if any background music or sound is playing through the audio device

Reimplemented from FAudioDevice.

◆ ResumeContext()

void FIOSAudioDevice::ResumeContext ( )
virtual

Thread context management

Reimplemented from FAudioDevice.

◆ SetAudioSessionActive()

bool FIOSAudioDevice::SetAudioSessionActive ( bool  bActive)
protected

◆ SetHardwareSampleRate()

bool FIOSAudioDevice::SetHardwareSampleRate ( const double InSampleRate)
protected

◆ SuspendContext()

void FIOSAudioDevice::SuspendContext ( )
virtual

Suspend any context related objects

Reimplemented from FAudioDevice.

◆ TeardownHardware()

void FIOSAudioDevice::TeardownHardware ( )
overrideprotectedvirtual

Shuts down any platform specific hardware/APIs

Reimplemented from FAudioDevice.

◆ UpdateDeviceDeltaTime()

void FIOSAudioDevice::UpdateDeviceDeltaTime ( )
overridevirtual

Sets the update delta time for the audio frame

Reimplemented from FAudioDevice.

◆ UpdateHardware()

void FIOSAudioDevice::UpdateHardware ( )
overrideprotectedvirtual

Lets the platform any tick actions

Reimplemented from FAudioDevice.

Friends And Related Symbol Documentation

◆ FIOSAudioSoundBuffer

◆ FIOSAudioSoundSource


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