Navigation
API > API/Runtime > API/Runtime/Engine
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Public/Audio.h |
| Include | #include "Audio.h" |
Syntax
struct FWaveInstance
Remarks
Structure encapsulating all information required to play a USoundWave on a channel/source. This is required as a single USoundWave object can be used in multiple active cues or multiple times in the same cue.
Variables
| Type | Name | Description | |
|---|---|---|---|
| float | AbsoluteAzimuth | The absolute position of the wave instance relative to forward vector of listener. | |
| FActiveSound * | ActiveSound | Active Sound this wave instance belongs to | |
| float | AmbientZoneFilterFrequency | The low pass filter frequency to use due to ambient zones. | |
| float | AttenuationDistance | Distance over which the sound is attenuated. | |
| float | AttenuationHighpassFilterFrequency | The high pass filter frequency to use due to distance attenuation. (using in audio mixer only) | |
| float | AttenuationLowpassFilterFrequency | The low pass filter frequency to use due to distance attenuation. | |
| UAudioLinkSettingsAbstract * | AudioLinkSettingsOverride | ||
| uint32: 1 | bAlreadyNotifiedHook | Whether the notify finished hook has been called since the last update/parsenodes | |
| uint32: 1 | bApplyRadioFilter | Set to true if the sound nodes state that the radio filter should be applied | |
| uint32: 1 | bCenterChannelOnly | Whether or not this sound class forces sounds to the center channel | |
| uint32: 1 | bEnableBaseSubmix | Whether or not to render to the main submix | |
| uint32: 1 | bEnableBusSends | Whether or not to enable sending this audio's output to buses. | |
| uint32: 1 | bEnableLowPassFilter | Whether or not to enable the low pass filter | |
| uint32: 1 | bEnableSourceDataOverride | Whether or not to use source data overrides | |
| uint32: 1 | bEnableSubmixSends | Whether or not to enable Submix Sends in addition to the Main Submix | |
| uint32: 1 | bIsAmbisonics | Whether or not this wave instance is ambisonics. | |
| uint32: 1 | bIsFinished | Whether wave instanced is finished | |
| uint32: 1 | bIsMusic | Whether or not this wave is music | |
| uint32: 1 | bIsOccluded | Whether or not the sound is occluded. | |
| uint32: 1 | bIsPaused | Whether or not this sound is manually paused | |
| uint32: 1 | bIsStarted | Whether wave instanced has been started | |
| uint32: 1 | bIsStopping | Whether or not this wave instance is stopping. | |
| uint32: 1 | bIsUISound | Whether or not this sound plays when the game is paused in the UI | |
| uint32: 1 | bReportedSpatializationWarning | Prevent spamming of spatialization of surround sounds by tracking if the warning has already been emitted | |
| uint32: 1 | bReverb | Whether or not this wave has reverb applied | |
| bool | bShouldSourceBufferListenerZeroBuffer | ||
| bool | bShouldUseAudioLink | AudioLink Opt in | |
| uint32: 1 | bSpatializationIsExternalSend | Whether the spatialization method is an external send | |
| TArray< FSoundSourceBusSendInfo >[(int32) EBusSendType::Count] | BusSends | The source bus and/or audio bus sends. | |
| int32 | EnvelopeFollowerAttackTime | The envelope follower attack time in milliseconds. | |
| int32 | EnvelopeFollowerReleaseTime | The envelope follower release time in milliseconds. | |
| float | LFEBleed | The amount of a sound to bleed to the LFE channel | |
| float | ListenerToSoundDistance | The distance from this wave instance to the closest listener. | |
| float | ListenerToSoundDistanceForPanning | The distance from this wave instance to the closest listener. (ignoring attenuation override) | |
| FVector | Location | Current location | |
| ELoopingMode | LoopingMode | Looping mode - None, loop with notification, forever | |
| float | LowPassFilterFrequency | The low pass filter frequency to use | |
| float | ManualReverbSendLevel | TODO remove | |
| float | NonSpatializedRadiusEnd | At what distance we are fully non-spatialized | |
| ENonSpatializedRadiusSpeakerMapMode | NonSpatializedRadiusMode | How we are doing the non-spatialized radius feature. | |
| float | NonSpatializedRadiusStart | At what distance we start transforming into non-spatialized soundsource | |
| FNotifyBufferFinishedHooks | NotifyBufferFinishedHooks | Sound nodes to notify when the current audio buffer finishes | |
| float | OcclusionFilterFrequency | The low pass filter frequency to use if the sound is occluded. | |
| UOcclusionPluginSourceSettingsBase * | OcclusionPluginSettings | The occlusion plugin settings to use for the wave instance. | |
| EAudioOutputTarget::Type | OutputTarget | Which output target the sound should play on. | |
| float | Pitch | Current pitch scale. | |
| float | PlaybackTime | The playback time of the wave instance. Updated from active sound. | |
| float | Priority | An audio component priority value that scales with volume (post all gain stages) and is used to determine voice playback priority. | |
| TUniquePtr< Audio::FQuartzQuantizedRequestData > | QuantizedRequestData | Quantized Request data | |
| float | RadioFilterVolume | Volume of the radio filter effect | |
| float | RadioFilterVolumeThreshold | The volume at which the radio filter kicks in | |
| UReverbPluginSourceSettingsBase * | ReverbPluginSettings | The occlusion plugin settings to use for the wave instance. | |
| float | ReverbSendLevel | The output reverb send level to use for tje wave instance. | |
| TObjectPtr< USoundClass > | SoundClass | Sound class | |
| float | SoundClassFilterFrequency | The low pass filter frequency to use from sound class. | |
| USoundSubmixBase * | SoundSubmix | Sound submix object to send audio to for mixing in audio mixer. | |
| TArray< FSoundSubmixSendInfo > | SoundSubmixSends | Sound submix sends | |
| FSharedISourceBufferListenerPtr | SourceBufferListener | Source Buffer listener | |
| USourceDataOverridePluginSourceSettingsBase * | SourceDataOverridePluginSettings | The source data override plugin settings to use for the wave instance. | |
| USoundEffectSourcePresetChain * | SourceEffectChain | Sound effect chain | |
| ESoundSpatializationAlgorithm | SpatializationMethod | Which spatialization method to use to spatialize 3d sounds. | |
| USpatializationPluginSourceSettingsBase * | SpatializationPluginSettings | The occlusion plugin settings to use for the wave instance. | |
| float | StartTime | An offset/seek time to play this wave instance. | |
| float | StereoSpread | Amount of spread for 3d multi-channel asset spatialization | |
| TArray< FAttenuationSubmixSendSettings > | SubmixSendSettings | The submix send settings to use. | |
| uint8 | UserIndex | User / Controller index that owns the sound | |
| float | VoiceCenterChannelVolume | Voice center channel volume | |
| TObjectPtr< USoundWave > | WaveData | Wave data | |
| UPTRINT | WaveInstanceHash | Hash value for finding the wave instance based on the path through the cue to get to it |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FWaveInstance
(
FWaveInstance&& |
|||
FWaveInstance
(
const UPTRINT InWaveInstanceHash, |
Constructor, initializing all member variables.Constructor, initializing all member variables. |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddReferencedObjects
(
FReferenceCollector& Collector |
Function used by the GC. | |
| float | Returns the actual volume the wave instance will play at, including all gain stages. | ||
| float | Returns the combined distance and occlusion attenuation of the source voice. | ||
| float | Returns the distance attenuation of the source voice | ||
| float | Returns the dynamic volume of the sound | ||
| float | Gets the envelope value of the waveinstance. | ||
| FString | GetName () |
Returns the name of the contained USoundWave | |
| float | Returns the occlusion attenuation of the source voice | ||
| float | GetPitch () |
Returns the pitch of the wave instance | |
| uint32 | GetPlayOrder () |
||
| bool | Whether spatialization is an external send | ||
| bool | Whether this wave will be spatialized, which controls 3D effects like panning | ||
| float | GetVolume () |
Returns the volume of the wave instance (ignoring application muting) | |
| float | Returns the volume multiplier on the wave instance. | ||
| float | Returns the weighted priority of the wave instance. | ||
| float | Returns the volume of the sound including distance attenuation. | ||
| bool | IsPlaying () |
Returns whether or not the WaveInstance is actively playing sound or set to play when silent. | |
| bool | IsSeekable () |
||
| bool | IsStopping () |
||
| bool | IsStreaming () |
Checks whether wave is streaming and streaming is supported | |
| void | NotifyFinished
(
const bool bStopped |
Notifies the wave instance that the current playback buffer has finished. | |
| void | SetDistanceAttenuation
(
const float InDistanceAttenuation |
||
| void | SetEnvelopeValue
(
const float InEnvelopeValue |
Sets the envelope value of the wave instance. | |
| void | SetOcclusionAttenuation
(
const float InOcclusionAttenuation |
||
| void | SetPitch
(
const float InPitch |
||
| void | SetSpatializationIsExternalSend
(
const bool InSpatializationIsExternalSend |
Whether spatialization is an external send | |
| void | SetStopping
(
const bool bInIsStopping |
||
| void | SetUseSpatialization
(
const bool InUseSpatialization |
Whether to use spatialization, which controls 3D effects like panning | |
| void | SetVolume
(
const float InVolume |
Setters for various values on wave instances. | |
| void | SetVolumeMultiplier
(
const float InVolumeMultiplier |
||
| bool | Returns the actual volume the wave instance will play at | ||
| void | Stops the wave instance without notifying NotifyWaveInstanceFinishedHook. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FWaveInstance & | operator=
(
FWaveInstance&& |
Constants
| Name | Description |
|---|---|
| PlayOrderCounter | Static helper to create good unique type hashes |