UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ActiveSound.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "WorldCollision.h"
8#include "Audio.h"
9#include "Audio/AudioDebug.h"
12#include "DSP/VolumeFader.h"
14#include "Sound/AudioVolume.h"
17
18class FAudioDevice;
19class USoundBase;
20class USoundSubmix;
21class USoundSourceBus;
24struct FWaveInstance;
25class USoundWave;
27struct FListener;
29
34{
36 float Azimuth = 0.0f;
37
39 float AbsoluteAzimuth = 0.0f;
40
42 float FocusFactor = 1.0f;
43
45 float DistanceScale = 1.0f;
46
48 float PriorityScale = 1.0f;
49
51 float PriorityHighest = 1.0f;
52
54 float VolumeScale = 1.0f;
55
57 bool bFirstFocusUpdate = true;
58};
59
64{
65 // A collection of finish notification hooks
67
68 // The Sound Class to use the settings of
70
71 // The transform of the sound (scale is not used)
73
74 // The speed that the sound is moving relative to the listener
76
77 // The volume product of the sound
78 float Volume;
79
80 // The attenuation of the sound due to distance attenuation
82
83 // The attenuation of the sound due to occlusion attenuation
85
86 // A volume scale on the sound specified by user
88
89 // Attack time of the source envelope follower
91
92 // Release time of the source envelope follower
94
95 // The multiplier to apply if the sound class desires
97
98 // The priority of sound, which is the product of the component priority and the USoundBased priority
99 float Priority;
100
101 // The pitch scale factor of the sound
102 float Pitch;
103
104 // Time offset from beginning of sound to start at
106
107 // At what distance from the source of the sound should spatialization begin
109
110 // At what distance from the source the sound is fully non-spatialized
112
113 // Which mode to use for non-spatialized radius
115
116 // The distance over which the sound is attenuated
118
119 // The distance from the listener to the sound
121
122 // The distance from the listener to the sound (ignores attenuation settings)
124
125 // The absolute azimuth angle of the sound relative to the forward listener vector (359 degrees to left, 1 degrees to right)
127
128 // The sound submix to use for the wave instance
130
131 // The submix sends.
134
135 // The source bus sends to use
137
138 // Reverb wet-level parameters
144
145 // The distance between left and right channels when spatializing stereo assets
147
148 // Which spatialization algorithm to use
150
151 // Whether the spatialization plugin is an external send
153
154 // What occlusion plugin source settings to use
156
157 // What occlusion plugin source settings to use
159
160 // What reverb plugin source settings to use
162
163 // What source data override plugin source settings to use
165
166 // If using AudioLink, this allows the settings to be overriden.
168
169 // What source effect chain to use
171
172 // The lowpass filter frequency to apply (if enabled)
174
175 // The highpass filter frequency to apply (if enabled)
177
178 // The lowpass filter frequency to apply due to distance attenuation
180
181 // The highpass filter frequency to apply due to distance attenuation
183
184 // The lowpass filter to apply if the sound is occluded
186
187 // The lowpass filter to apply if the sound is inside an ambient zone
189
192
195
198
200
202
203 // Whether the sound should be spatialized
205
206 // Whether the sound should be seamlessly looped
208
209 // Whether we have enabled low-pass filtering of this sound
211
212 // Whether we have enabled high-pass filtering of this sound
214
215 // Whether this sound is occluded
217
218 // Whether or not this sound is manually paused (i.e. not by application-wide pause)
220
221 // Whether or not this sound can re-trigger
223
224 // Whether or not to apply a =6 dB attenuation to stereo spatialization sounds
226
228 : SoundClass(nullptr)
230 , Volume(1.f)
233 , VolumeMultiplier(1.f)
237 , Pitch(1.f)
238 , StartTime(-1.f)
242 , AttenuationDistance(0.0f)
245 , AbsoluteAzimuth(0.0f)
246 , SoundSubmix(nullptr)
248 , ReverbSendLevelRange(0.0f, 0.0f)
249 , ReverbSendLevelDistanceRange(0.0f, 0.0f)
251 , StereoSpread(0.0f)
255 , OcclusionPluginSettings(nullptr)
256 , ReverbPluginSettings(nullptr)
259 , SourceEffectChain(nullptr)
271 , bLooping(false)
278 {
279 }
280};
281
283{
284public:
285
289
291
292private:
294 uint32 WorldID;
295
298 TObjectPtr<USoundAttenuation> SoundAttenuation;
299
300 uint64 AudioComponentID;
301 FName AudioComponentUserID;
302 uint32 OwnerID;
303
304 FName AudioComponentName;
305 FName OwnerName;
306
307 FObjectKey OwnerKey;
308
309 uint32 PlayOrder;
310
311public:
312 uint32 GetObjectId() const override { return Sound ? Sound->GetUniqueID() : INDEX_NONE; }
313 ENGINE_API int32 GetPlayCount() const override;
314 uint32 GetPlayOrder() const { return PlayOrder; }
315 bool IsPreviewSound() const override { return bIsPreviewSound; }
316 ENGINE_API void Stop() override;
317
319 uint32 GetInstanceID() const { return PlayOrder; }
320
321 uint64 GetAudioComponentID() const { return AudioComponentID; }
322 FName GetAudioComponentUserID() const { return AudioComponentUserID; }
324 ENGINE_API void SetAudioComponent(const FActiveSound& ActiveSound);
326 ENGINE_API void SetOwner(const AActor* Owner);
327 ENGINE_API FString GetAudioComponentName() const;
328 ENGINE_API FString GetOwnerName() const;
329
330 uint32 GetWorldID() const { return WorldID; }
331 TWeakObjectPtr<UWorld> GetWeakWorld() const { return World; }
333 {
334 return World.Get();
335 }
336 ENGINE_API void SetWorld(UWorld* World);
337
338 ENGINE_API void SetPitch(float Value);
339 ENGINE_API void SetVolume(float Value);
340
341 float GetPitch() const { return PitchMultiplier; }
342
344 ENGINE_API float GetVolume() const;
345
346 USoundBase* GetSound() const { return Sound; }
348
349 USoundEffectSourcePresetChain* GetSourceEffectChain() const { return SourceEffectChain ? ToRawPtr(SourceEffectChain) : ToRawPtr(Sound->SourceEffectChain); }
350
352
353 ENGINE_API void SetSoundClass(USoundClass* SoundClass);
354
356
358
363
369
371
373 bool CanDelete() const { return !bAsyncOcclusionPending; }
374
376 bool IsLooping() const { return Sound && Sound->IsLooping(); }
377
379 bool IsOneShot() const { return !IsLooping(); }
380
382 bool IsPlayingAudio() const { return bIsPlayingAudio; }
383
385 ENGINE_API bool IsPlayWhenSilent() const;
386
388 float GetConcurrencyPriority() const;
389
391
394
397
399
402
405
406private:
408 TObjectPtr<USoundClass> SoundClassOverride;
409
411 TArray<FSoundSubmixSendInfo> SoundSubmixSendsOverride;
412
415
416 TMap<UPTRINT, FWaveInstance*> WaveInstances;
417
419
420 EVirtualizationMode VirtualizationModeOverride;
421
422 uint8 bEnableVirtualizationModeOverride: 1;
423
424public:
426 {
427 return InstanceTransmitter.Get();
428 }
429
431 {
432 return InstanceTransmitter.Get();
433 }
434
436 {
437 return InstanceTransmitter.Reset();
438 }
439
440 enum class EFadeOut : uint8
441 {
442 // Sound is not currently fading out
443 None,
444
445 // Client code (eg. AudioComponent) is requesting a fade out
446 User,
447
448 // The concurrency system is requesting a fade due to voice stealing
450 };
451
454
457
460
463
466
469
472
475
478
481
484
487
490
493
496
499
502
505
508
511
512#if WITH_EDITORONLY_DATA
515#endif //WITH_EDITORONLY_DATA
516
519
522
523#if !(NO_LOGGING || UE_BUILD_SHIPPING || UE_BUILD_TEST)
526#endif
527
530
533
536
539
542
545
548
551
556
561
564
566
569
571
574
577
580
583
586
589
592
594
597
600
603
606
609
612
614
616 float Priority;
617
621
624
627
630
633
635
640
643
645
648
652
657
659
660 // To remember where the volumes are interpolating to and from
666
667 // Envelope follower attack and release time parameters
670
673
674 // Whether or not there are Source Bus Sends that have not been sent to the render thread
676
677 // Bus send(s) that have not yet been sent to the render thread
679
681
682#if ENABLE_AUDIO_DEBUG
683 FColor DebugColor;
684#endif // ENABLE_AUDIO_DEBUG
685
687
688 // Updates the wave instances to be played.
690
694 ENGINE_API FWaveInstance* FindWaveInstance(const UPTRINT WaveInstanceHash);
695
696 ENGINE_API void RemoveWaveInstance(const UPTRINT WaveInstanceHash);
697
699 {
700 return WaveInstances;
701 }
702
706 ENGINE_API FWaveInstance& AddWaveInstance(const UPTRINT WaveInstanceHash);
707
712
715
717
721 friend FArchive& operator<<( FArchive& Ar, FActiveSound* ActiveSound );
722
724
729
734
737
740
745 ENGINE_API bool HasNewBusSends() const;
746
752
755
756 /* Gives new Modulation Routing settings to the ActiveSound. This overwrites all previous Modulation Routing settings. */
758
759 /* Adds additional Modulators to the ActiveSound, if possible.
760 * This function forces the Destination's routing method to Union.
761 * To replace existing modulators or set a different routing method, use SetNewModulationRouting.
762 */
764
765 /* Removes given Modulators from the ActiveSound, if possible. */
767
771
772 /* Determines which of the provided listeners is the closest to the sound */
774
775 /* Determines which listener is the closest to the sound */
777
779 FSoundOwnerObjectID GetOwnerID() const { return OwnerID; }
780
782 FObjectKey GetOwnerKey() const { return OwnerKey; }
783
786
788
791
794
796 ENGINE_API bool GetAlwaysPlay() const;
797
801 ENGINE_API float GetHighestPriority(bool bIgnoreAlwaysPlay = false) const;
802
805
808
811
814
817
818private:
819
820 struct FAsyncTraceDetails
821 {
822 Audio::FDeviceId AudioDeviceID;
823 FActiveSound* ActiveSound;
824 };
825
826 static ENGINE_API TMap<FTraceHandle, FAsyncTraceDetails> TraceToActiveSoundMap;
827
828 static ENGINE_API FTraceDelegate ActiveSoundTraceDelegate;
829
831 mutable int32 ClosestListenerIndex = INDEX_NONE;
832
833 void CacheClosestListener() const;
834
836 friend class FAudioDevice;
837
842 ENGINE_API void MarkPendingDestroy (bool bDestroyNow);
843
845 bool IsStopping() const { return bIsStopping; }
846
848 ENGINE_API bool UpdateStoppingSources(uint64 CurrentTick, bool bEnsureStopped);
849
851 ENGINE_API void UpdateConcurrencyVolumeScalars(const float DeltaTime);
852
860
862 ENGINE_API void GatherInteriorData(FSoundParseParameters& ParseParams);
863
865 ENGINE_API void HandleInteriorVolumes(FSoundParseParameters& ParseParams);
866
869};
#define MIN_FILTER_FREQUENCY
Definition AudioDefines.h:47
#define MAX_FILTER_FREQUENCY
Definition AudioDefines.h:48
EAudioVolumeLocationState
Definition AudioVolume.h:28
EBusSendType
Definition Audio.h:169
@ INDEX_NONE
Definition CoreMiscDefines.h:150
@ ForceInit
Definition CoreMiscDefines.h:155
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::UPTRINT UPTRINT
An unsigned integer the same size as a pointer.
Definition Platform.h:1146
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
T * ToRawPtr(const TObjectPtr< T > &Ptr)
Definition ObjectPtr.h:1000
int32 ParseParams(const FString &ParamStr, TArray< FString > &OutArray)
Definition NativeJSScripting.cpp:193
ESoundSpatializationAlgorithm
Definition SoundAttenuation.h:32
EReverbSendMethod
Definition SoundAttenuation.h:53
ENonSpatializedRadiusSpeakerMapMode
Definition SoundAttenuation.h:115
EVirtualizationMode
Definition SoundBase.h:58
uint32 FSoundOwnerObjectID
Definition SoundConcurrency.h:23
EModulationDestination
Definition SoundModulationDestination.h:43
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Actor.h:257
Definition VolumeFader.h:30
Definition IAudioParameterTransmitter.h:58
Definition Archive.h:1208
Definition AudioDevice.h:417
Definition AudioDynamicParameter.h:10
Definition NameTypes.h:617
Definition UObjectGlobals.h:2492
Definition ThreadSafeBool.h:17
Definition IAudioModulation.h:296
Definition Array.h:670
Definition UnrealString.h.inl:34
UE_FORCEINLINE_HINT ObjectType * Get() const
Definition SharedPointer.h:1065
UE_FORCEINLINE_HINT void Reset()
Definition SharedPointer.h:1120
Definition SortedMap.h:20
Definition AudioLinkSettingsAbstract.h:32
Definition IAudioExtensionPlugin.h:483
Definition IAudioExtensionPlugin.h:598
Definition SoundBase.h:109
Definition SoundClass.h:209
Definition SoundConcurrency.h:217
Definition SoundEffectSource.h:49
Definition SoundSubmix.h:174
Definition SoundSubmix.h:334
Definition SoundWave.h:417
Definition IAudioExtensionPlugin.h:398
Definition IAudioExtensionPlugin.h:185
Definition World.h:918
uint32 FDeviceId
Definition AudioDefines.h:66
@ false
Definition radaudio_common.h:23
Definition QuartzQuantizationUtilities.h:543
Definition ActiveSound.h:283
FThreadSafeBool bIsOccluded
Definition ActiveSound.h:576
ENGINE_API void RemoveWaveInstance(const UPTRINT WaveInstanceHash)
Definition ActiveSound.cpp:1438
uint8 bIsFirstAttenuationUpdate
Definition ActiveSound.h:562
bool bHasNewBusSends
Definition ActiveSound.h:675
TSortedMap< UPTRINT, float > SeekRestartTimes
Definition ActiveSound.h:593
ENGINE_API void RemoveModulationRouting(const TSet< TObjectPtr< USoundModulatorBase > > &NewModulators, EModulationDestination Destination)
Definition ActiveSound.cpp:647
FSoundModulationDefaultRoutingSettings ModulationRouting
Definition ActiveSound.h:680
float Priority
Definition ActiveSound.h:616
TArray< FAudioVolumeSubmixSendSettings > PreviousAudioVolumeSubmixSendSettings
Definition ActiveSound.h:656
float LowPassFilterFrequency
Definition ActiveSound.h:599
uint8 bApplyInteriorVolumes
Definition ActiveSound.h:521
FThreadSafeBool bAsyncOcclusionPending
Definition ActiveSound.h:579
ENGINE_API ~FActiveSound()
Definition ActiveSound.cpp:200
uint8 bUpdateSingleEnvelopeValue
Definition ActiveSound.h:538
bool IsPreviewSound() const override
Definition ActiveSound.h:315
float PitchMultiplier
Definition ActiveSound.h:596
uint8 bWarnedAboutOrphanedLooping
Definition ActiveSound.h:525
FDynamicParameter CurrentOcclusionFilterFrequency
Definition ActiveSound.h:608
ENGINE_API void UpdateWaveInstances(TArray< FWaveInstance * > &OutWaveInstances, const float DeltaTime)
Definition ActiveSound.cpp:965
void ClearTransmitter()
Definition ActiveSound.h:435
uint8 bReverb
Definition ActiveSound.h:504
ENGINE_API void UpdateAttenuation(float DeltaTime, FSoundParseParameters &ParseParams, int32 ListenerIndex, const FSoundAttenuationSettings *SettingsAttenuationNode=nullptr)
Definition ActiveSound.cpp:1934
ENGINE_API void SetAttenuationSettingsOverride(bool bInIsAttenuationSettingsOverridden)
Definition ActiveSound.cpp:404
ENGINE_API void SetSourceEffectChain(USoundEffectSourcePresetChain *InSourceEffectChain)
Definition ActiveSound.cpp:380
uint8 bHasAttenuationSettings
Definition ActiveSound.h:459
FSharedISourceBufferListenerPtr SourceBufferListener
Definition ActiveSound.h:650
ENGINE_API void SetOwner(const AActor *Owner)
Definition ActiveSound.cpp:511
float SubtitlePriority
Definition ActiveSound.h:613
TArray< TTuple< EBusSendType, FSoundSourceBusSendInfo > > NewBusSends
Definition ActiveSound.h:678
uint8 bUpdatePlayPercentage
Definition ActiveSound.h:535
uint8 bLocationDefined
Definition ActiveSound.h:489
void SetSourceListener(FSharedISourceBufferListenerPtr InListener, bool bShouldZeroBuffer)
Definition ActiveSound.h:364
FSoundAttenuationSettings AttenuationSettings
Definition ActiveSound.h:644
EVirtualizationMode GetVirtualizationMode() const
Definition ActiveSound.cpp:431
UWorld * GetWorld() const
Definition ActiveSound.h:332
FSoundOwnerObjectID GetOwnerID() const
Definition ActiveSound.h:779
uint8 bHasCheckedOcclusion
Definition ActiveSound.h:453
bool IsLooping() const
Definition ActiveSound.h:376
ENGINE_API bool IsPlayWhenSilent() const
Definition ActiveSound.cpp:409
float PlaybackTimeUnscaled
Definition ActiveSound.h:585
FTransform Transform
Definition ActiveSound.h:634
ENGINE_API TArray< TTuple< EBusSendType, FSoundSourceBusSendInfo > > const & GetNewBusSends() const
Definition ActiveSound.cpp:599
ENGINE_API FWaveInstance & AddWaveInstance(const UPTRINT WaveInstanceHash)
Definition ActiveSound.cpp:1659
uint8 bIsPreviewSound
Definition ActiveSound.h:510
float GetConcurrencyPriority() const
Definition ActiveSound.cpp:419
ENGINE_API void SetSound(USoundBase *InSound)
Definition ActiveSound.cpp:366
uint8 bHandleSubtitles
Definition ActiveSound.h:483
ENGINE_API void GetSoundSubmixSends(TArray< FSoundSubmixSendInfo > &OutSends) const
Definition ActiveSound.cpp:704
FObjectKey GetOwnerKey() const
Definition ActiveSound.h:782
uint8 bEnableBusSendRoutingOverride
Definition ActiveSound.h:558
uint32 GetObjectId() const override
Definition ActiveSound.h:312
uint8 bHasExternalSubtitles
Definition ActiveSound.h:486
ENGINE_API void ParseAttenuation(FSoundParseParameters &OutParseParams, int32 ListenerIndex, const FSoundAttenuationSettings &InAttenuationSettings)
Definition ActiveSound.cpp:1929
EFadeOut
Definition ActiveSound.h:441
ENGINE_API void SetNewModulationRouting(const FSoundModulationDefaultRoutingSettings &NewRouting)
Definition ActiveSound.cpp:610
ENGINE_API int32 GetClosestListenerIndex() const
Definition ActiveSound.cpp:943
float SourceInteriorLPF
Definition ActiveSound.h:663
uint8 bShouldRemainActiveIfDropped
Definition ActiveSound.h:462
static ENGINE_API void OcclusionTraceDone(const FTraceHandle &TraceHandle, FTraceDatum &TraceDatum)
Definition ActiveSound.cpp:1447
TArray< uint8 > SoundNodeData
Definition ActiveSound.h:672
TSet< TObjectPtr< USoundConcurrency > > ConcurrencySet
Definition ActiveSound.h:404
uint8 bIsMusic
Definition ActiveSound.h:501
ENGINE_API USoundClass * GetSoundClass() const
Definition ActiveSound.cpp:537
uint8 bStartedWithinNonBinauralRadius
Definition ActiveSound.h:563
ENGINE_API float GetTotalConcurrencyVolumeScale() const
Definition ActiveSound.cpp:1695
void SetAudioDevice(FAudioDevice *InAudioDevice)
Definition ActiveSound.h:359
uint8 bCenterChannelOnly
Definition ActiveSound.h:507
uint8 bApplyRadioFilter
Definition ActiveSound.h:480
uint64 GetAudioComponentID() const
Definition ActiveSound.h:321
uint8 bIsStopping
Definition ActiveSound.h:550
float VolumeMultiplier
Definition ActiveSound.h:595
uint8 bUpdateMultiEnvelopeValue
Definition ActiveSound.h:541
bool bShouldSourceBufferListenerZeroBuffer
Definition ActiveSound.h:651
float HighPassFilterFrequency
Definition ActiveSound.h:602
uint8 UserIndex
Definition ActiveSound.h:570
ENGINE_API bool HasNewBusSends() const
Definition ActiveSound.cpp:594
FInteriorSettings InteriorSettings
Definition ActiveSound.h:654
float MaxSourceModulationValue
Definition ActiveSound.h:623
uint8 bFinished
Definition ActiveSound.h:465
uint32 GetInstanceID() const
Definition ActiveSound.h:319
void OverrideVirtualizationMode(EVirtualizationMode Mode)
Definition ActiveSound.cpp:465
FVector LastLocation
Definition ActiveSound.h:642
uint8 bHasVirtualized
Definition ActiveSound.h:474
ENGINE_API float GetVolume() const
Definition ActiveSound.cpp:1689
ENGINE_API TArray< TSet< TObjectPtr< USoundModulatorBase > > > GetEffectiveVolumeModulators() const
Definition ActiveSound.cpp:674
ENGINE_API bool GetConcurrencyFadeDuration(float &OutFadeDuration) const
Definition ActiveSound.cpp:802
ENGINE_API void CollectAttenuationShapesForVisualization(TMultiMap< EAttenuationShape::Type, FBaseAttenuationSettings::AttenuationShapeDetails > &ShapeDetailsMap) const
Definition ActiveSound.cpp:1715
float CurrentInteriorLPF
Definition ActiveSound.h:665
double LastUpdateTime
Definition ActiveSound.h:661
ENGINE_API void AddVolumeSubmixSends(FSoundParseParameters &ParseParams, EAudioVolumeLocationState LocationState)
Definition ActiveSound.cpp:1909
ENGINE_API void SetAudioComponent(const FActiveSound &ActiveSound)
Definition ActiveSound.cpp:487
const Audio::IParameterTransmitter * GetTransmitter() const
Definition ActiveSound.h:430
float CurrentInteriorVolume
Definition ActiveSound.h:664
ENGINE_API FActiveSound(const FActiveSound &)
ENGINE_API void ResetNewBusSends()
Definition ActiveSound.cpp:604
float LastOcclusionCheckTime
Definition ActiveSound.h:629
ENGINE_API void ApplyRadioFilter(const FSoundParseParameters &ParseParams)
Definition ActiveSound.cpp:1666
uint8 bHasActiveSubmixSendRoutingOverride
Definition ActiveSound.h:555
FAudioDevice * AudioDevice
Definition ActiveSound.h:398
Audio::IParameterTransmitter * GetTransmitter()
Definition ActiveSound.h:425
uint8 bUpdatePlaybackTime
Definition ActiveSound.h:544
ENGINE_API void SetPitch(float Value)
Definition ActiveSound.cpp:350
uint8 bIgnoreForFlushing
Definition ActiveSound.h:492
ENGINE_API void AddModulationRouting(const TSet< TObjectPtr< USoundModulatorBase > > &NewModulators, EModulationDestination Destination)
Definition ActiveSound.cpp:616
uint8 bAllowSpatialization
Definition ActiveSound.h:456
ENGINE_API void UpdateFocusData(float DeltaTime, const FAttenuationListenerData &ListenerData, FAttenuationFocusData *OutFocusData=nullptr)
Definition ActiveSound.cpp:1849
uint8 bEnableMainSubmixOutputOverride
Definition ActiveSound.h:559
uint8 bIsPaused
Definition ActiveSound.h:468
ENGINE_API void SetSourceBusSend(EBusSendType BusSendType, const FSoundSourceBusSendInfo &SourceBusSendInfo)
Definition ActiveSound.cpp:572
ENGINE_API int32 FindClosestListener() const
Definition ActiveSound.cpp:770
uint32 GetWorldID() const
Definition ActiveSound.h:330
ENGINE_API FActiveSound()
Definition ActiveSound.cpp:90
uint8 bIsPlayingAudio
Definition ActiveSound.h:547
ENGINE_API int32 GetPlayCount() const override
Definition ActiveSound.cpp:335
ENGINE_API void SetWorld(UWorld *World)
Definition ActiveSound.cpp:360
ENGINE_API USoundSubmixBase * GetSoundSubmix() const
Definition ActiveSound.cpp:551
Audio::FQuartzQuantizedRequestData QuantizedRequestData
Definition ActiveSound.h:647
uint8 bHasActiveMainSubmixOutputOverride
Definition ActiveSound.h:554
float RequestedStartTime
Definition ActiveSound.h:591
ENGINE_API void SetVolume(float Value)
Definition ActiveSound.cpp:355
ENGINE_API FWaveInstance * FindWaveInstance(const UPTRINT WaveInstanceHash)
Definition ActiveSound.cpp:1433
float PlaybackTimeNonVirtualized
Definition ActiveSound.h:588
float PlaybackTime
Definition ActiveSound.h:582
uint8 bEnableHighPassFilter
Definition ActiveSound.h:532
TMap< UPTRINT, uint32 > SoundNodeOffsetMap
Definition ActiveSound.h:671
ENGINE_API void Stop() override
Definition ActiveSound.cpp:692
ENGINE_API void GetBusSends(EBusSendType BusSendType, TArray< FSoundSourceBusSendInfo > &OutSends) const
Definition ActiveSound.cpp:733
uint32 GetPlayOrder() const
Definition ActiveSound.h:314
float OcclusionCheckInterval
Definition ActiveSound.h:626
USoundEffectSourcePresetChain * GetSourceEffectChain() const
Definition ActiveSound.h:349
ENGINE_API void SetAttenuationSettingsAsset(TObjectPtr< USoundAttenuation > InSoundAttenuation)
Definition ActiveSound.cpp:399
uint8 bIsUISound
Definition ActiveSound.h:498
EFadeOut FadeOut
Definition ActiveSound.h:573
ENGINE_API float GetHighestPriority(bool bIgnoreAlwaysPlay=false) const
Definition ActiveSound.cpp:1834
ENGINE_API FString GetOwnerName() const
Definition ActiveSound.cpp:532
USoundBase * GetSound() const
Definition ActiveSound.h:346
ENGINE_API bool GetAlwaysPlay() const
Definition ActiveSound.cpp:1811
ENGINE_API void SetSoundClass(USoundClass *SoundClass)
Definition ActiveSound.cpp:385
bool IsOneShot() const
Definition ActiveSound.h:379
FName GetAudioComponentUserID() const
Definition ActiveSound.h:322
void ClearVirtualizationModeOverride()
Definition ActiveSound.cpp:471
ENGINE_API void ClearAudioComponent()
Definition ActiveSound.cpp:476
ENGINE_API void SetSubmixSend(const FSoundSubmixSendInfo &SubmixSendInfo)
Definition ActiveSound.cpp:556
const TMap< UPTRINT, FWaveInstance * > & GetWaveInstances() const
Definition ActiveSound.h:698
FAttenuationFocusData FocusData
Definition ActiveSound.h:639
float MinCurrentPitch
Definition ActiveSound.h:590
int32 EnvelopeFollowerAttackTime
Definition ActiveSound.h:668
uint8 bModulationRoutingUpdated
Definition ActiveSound.h:565
uint8 bGotInteriorSettings
Definition ActiveSound.h:518
float VolumeConcurrency
Definition ActiveSound.h:620
TWeakObjectPtr< UWorld > GetWeakWorld() const
Definition ActiveSound.h:331
TArray< FAudioVolumeSubmixSendSettings > AudioVolumeSubmixSendSettings
Definition ActiveSound.h:655
int32 EnvelopeFollowerReleaseTime
Definition ActiveSound.h:669
Audio::FVolumeFader ComponentVolumeFader
Definition ActiveSound.h:605
bool IsPlayingAudio() const
Definition ActiveSound.h:382
uint8 bAlwaysPlay
Definition ActiveSound.h:495
ENGINE_API FString GetAudioComponentName() const
Definition ActiveSound.cpp:527
float MaxDistance
Definition ActiveSound.h:632
uint8 bEnableLowPassFilter
Definition ActiveSound.h:529
ENGINE_API void UpdateInterfaceParameters(const TArray< FListener > &InListeners)
Definition ActiveSound.cpp:835
bool CanDelete() const
Definition ActiveSound.h:373
uint8 bRadioFilterSelected
Definition ActiveSound.h:477
uint8 bShouldStopDueToMaxConcurrency
Definition ActiveSound.h:471
friend FArchive & operator<<(FArchive &Ar, FActiveSound *ActiveSound)
Definition ActiveSound.cpp:248
ENGINE_API void GetConcurrencyHandles(TArray< FConcurrencyHandle > &OutConcurrencyHandles) const
Definition ActiveSound.cpp:775
uint8 bIsAttenuationSettingsOverridden
Definition ActiveSound.h:568
ENGINE_API void AddReferencedObjects(FReferenceCollector &Collector)
Definition ActiveSound.cpp:259
float GetPitch() const
Definition ActiveSound.h:341
uint8 bHasActiveBusSendRoutingOverride
Definition ActiveSound.h:553
TMap< FConcurrencyGroupID, FConcurrencySoundData > ConcurrencyGroupData
Definition ActiveSound.h:401
uint8 bEnableSubmixSendRoutingOverride
Definition ActiveSound.h:560
static ENGINE_API FActiveSound * CreateVirtualCopy(const FActiveSound &ActiveSoundToCopy, FAudioDevice &AudioDevice)
Definition ActiveSound.cpp:206
FDynamicParameter CurrentOcclusionVolumeAttenuation
Definition ActiveSound.h:611
float SourceInteriorVolume
Definition ActiveSound.h:662
uint32 AudioVolumeID
Definition ActiveSound.h:658
Definition ActiveSound.h:34
bool bFirstFocusUpdate
Definition ActiveSound.h:57
float VolumeScale
Definition ActiveSound.h:54
float AbsoluteAzimuth
Definition ActiveSound.h:39
float PriorityHighest
Definition ActiveSound.h:51
float PriorityScale
Definition ActiveSound.h:48
float DistanceScale
Definition ActiveSound.h:45
float Azimuth
Definition ActiveSound.h:36
float FocusFactor
Definition ActiveSound.h:42
Definition AudioDevice.h:344
Definition Color.h:486
Definition AudioVolume.h:76
Definition AudioDevice.h:156
Definition Audio.h:107
Definition ObjectKey.h:19
Definition CurveFloat.h:13
Definition SoundAttenuation.h:139
Definition SoundModulationDestination.h:134
Definition ActiveSound.h:64
float OcclusionAttenuation
Definition ActiveSound.h:84
float HighPassFilterFrequency
Definition ActiveSound.h:176
FNotifyBufferFinishedHooks NotifyBufferFinishedHooks
Definition ActiveSound.h:66
bool bSpatializationIsExternalSend
Definition ActiveSound.h:152
float AmbientZoneFilterFrequency
Definition ActiveSound.h:188
uint32 bEnableBusSends
Definition ActiveSound.h:191
float ManualReverbSendLevel
Definition ActiveSound.h:142
USoundEffectSourcePresetChain * SourceEffectChain
Definition ActiveSound.h:170
uint8 bApplyNormalizationToStereoSounds
Definition ActiveSound.h:225
USourceDataOverridePluginSourceSettingsBase * SourceDataOverridePluginSettings
Definition ActiveSound.h:164
UReverbPluginSourceSettingsBase * ReverbPluginSettings
Definition ActiveSound.h:161
FTransform Transform
Definition ActiveSound.h:72
TArray< FSoundSubmixSendInfo > SoundSubmixSends
Definition ActiveSound.h:132
float VolumeMultiplier
Definition ActiveSound.h:87
float AttenuationDistance
Definition ActiveSound.h:117
FVector Velocity
Definition ActiveSound.h:75
float Volume
Definition ActiveSound.h:78
float InteriorVolumeMultiplier
Definition ActiveSound.h:96
int32 EnvelopeFollowerReleaseTime
Definition ActiveSound.h:93
TArray< FAttenuationSubmixSendSettings > AttenuationSubmixSends
Definition ActiveSound.h:133
float StartTime
Definition ActiveSound.h:105
float AttenuationHighpassFilterFrequency
Definition ActiveSound.h:182
float Priority
Definition ActiveSound.h:99
uint32 bEnableBaseSubmix
Definition ActiveSound.h:194
TArray< FSoundSourceBusSendInfo > BusSends[(int32) EBusSendType::Count]
Definition ActiveSound.h:136
FVector2D ReverbSendLevelDistanceRange
Definition ActiveSound.h:141
float AttenuationLowpassFilterFrequency
Definition ActiveSound.h:179
USpatializationPluginSourceSettingsBase * SpatializationPluginSettings
Definition ActiveSound.h:155
FRuntimeFloatCurve CustomReverbSendCurve
Definition ActiveSound.h:143
USoundClass * SoundClass
Definition ActiveSound.h:69
float NonSpatializedRadiusStart
Definition ActiveSound.h:108
uint8 bIsPaused
Definition ActiveSound.h:219
ESoundSpatializationAlgorithm SpatializationMethod
Definition ActiveSound.h:149
float DistanceAttenuation
Definition ActiveSound.h:81
uint32 bEnableSendToAudioLink
Definition ActiveSound.h:201
float Pitch
Definition ActiveSound.h:102
uint8 bLooping
Definition ActiveSound.h:207
FVector2D ReverbSendLevelRange
Definition ActiveSound.h:140
uint32 bEnableSubmixSends
Definition ActiveSound.h:197
float OcclusionFilterFrequency
Definition ActiveSound.h:185
uint8 bEnableRetrigger
Definition ActiveSound.h:222
USoundSubmixBase * SoundSubmix
Definition ActiveSound.h:129
float NonSpatializedRadiusEnd
Definition ActiveSound.h:111
FSoundParseParameters()
Definition ActiveSound.h:227
float AbsoluteAzimuth
Definition ActiveSound.h:126
EReverbSendMethod ReverbSendMethod
Definition ActiveSound.h:139
float LowPassFilterFrequency
Definition ActiveSound.h:173
uint8 bEnableHighPassFilter
Definition ActiveSound.h:213
uint8 bEnableLowPassFilter
Definition ActiveSound.h:210
uint8 bUseSpatialization
Definition ActiveSound.h:204
uint8 bIsOccluded
Definition ActiveSound.h:216
float StereoSpread
Definition ActiveSound.h:146
UAudioLinkSettingsAbstract * AudioLinkSettingsOverride
Definition ActiveSound.h:167
ENonSpatializedRadiusSpeakerMapMode NonSpatializedRadiusMode
Definition ActiveSound.h:114
float ListenerToSoundDistance
Definition ActiveSound.h:120
UOcclusionPluginSourceSettingsBase * OcclusionPluginSettings
Definition ActiveSound.h:158
uint32 bEnableSourceDataOverride
Definition ActiveSound.h:199
int32 EnvelopeFollowerAttackTime
Definition ActiveSound.h:90
float ListenerToSoundDistanceForPanning
Definition ActiveSound.h:123
Definition SoundSourceBusSend.h:27
Definition SoundSubmixSend.h:146
Definition WorldCollision.h:171
Definition WorldCollision.h:29
Definition Audio.h:180
Definition ObjectPtr.h:488
Definition WeakObjectPtrTemplates.h:25