unreal.SoundSubmix

class unreal.SoundSubmix(outer: Optional[Object] = None, name: Union[Name, str] = 'None')

Bases: SoundSubmixWithParentBase

Sound Submix class meant for applying an effect to the downmixed sum of multiple audio sources.

C++ Source:

  • Module: Engine

  • File: SoundSubmix.h

Editor Properties: (see get_editor_property/set_editor_property)

  • ambisonics_plugin_settings (SoundfieldEncodingSettingsBase): [Read-Write] Ambisonics Plugin Settings: Optional settings used by plugins which support ambisonics file playback.

  • audio_link_settings (AudioLinkSettingsAbstract): [Read-Write] Audio Link Settings: Optional Audio Link Settings Object

  • auto_disable (bool): [Read-Write] Auto Disable: Auto-manage enabling and disabling the submix as a CPU optimization. It will be disabled if the submix and all child submixes are silent. It will re-enable if a sound is sent to the submix or a child submix is audible.

  • auto_disable_time (float): [Read-Write] Auto Disable Time: The minimum amount of time to wait before automatically disabling a submix if it is silent. Will immediately re-enable if source audio is sent to it.

  • child_submixes (Array[SoundSubmixBase]): [Read-Only] Child Submixes: Child submixes to this sound mix

  • dry_level (float): [Read-Write] Dry Level: Deprecated – The dry level of the submix. Applied before submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of DryLevelModulation.

  • dry_level_modulation (SoundModulationDestinationSettings): [Read-Write] Dry Level Modulation: The dry level of the submix in Decibels. Applied before submix effects and analysis are performed.

  • envelope_follower_attack_time (int32): [Read-Write] Envelope Follower Attack Time: The attack time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this submix.

  • envelope_follower_release_time (int32): [Read-Write] Envelope Follower Release Time: The release time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this submix.

  • mute_when_backgrounded (bool): [Read-Write] Mute when Backgrounded: Mute this submix when the application is muted or in the background. Used to prevent submix effect tails from continuing when tabbing out of application or if application is muted.

  • on_submix_recorded_file_done (OnSubmixRecordedFileDone): [Read-Write] On Submix Recorded File Done: Blueprint delegate for when a recorded file is finished exporting.

  • output_volume (float): [Read-Write] Output Volume: Deprecated – The output volume of the submix. Applied after submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of OutputVolumeModulation.

  • output_volume_modulation (SoundModulationDestinationSettings): [Read-Write] Output Volume Modulation: The output volume of the submix in Decibels. Applied after submix effects and analysis are performed.

  • parent_submix (SoundSubmixBase): [Read-Only] Parent Submix

  • send_to_audio_link (bool): [Read-Write] Send to Audio Link: Whether to send this Submix to AudioLink (when AudioLink is Enabled)

  • submix_effect_chain (Array[SoundEffectSubmixPreset]): [Read-Write] Submix Effect Chain

  • wet_level (float): [Read-Write] Wet Level: Deprecated – The wet level of the submix. Applied after submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of WetLevelModulation.

  • wet_level_modulation (SoundModulationDestinationSettings): [Read-Write] Wet Level Modulation: The wet level of the submixin Decibels. Applied after submix effects and analysis are performed.

add_envelope_follower_delegate(world_context_object, on_submix_envelope_bp) None

Adds an envelope follower delegate to the submix when envelope following is enabled on this submix.

Parameters:
  • world_context_object (Object) –

  • on_submix_envelope_bp (OnSubmixEnvelopeBP) – Event to fire when new envelope data is available.

add_spectral_analysis_delegate(world_context_object, band_settings, on_submix_spectral_analysis_bp, update_rate=10.000000, decibel_noise_floor=-40.000000, do_normalize=True, do_auto_range=False, auto_range_attack_time=0.100000, auto_range_release_time=60.000000) None

Adds a spectral analysis delegate to receive notifications when this submix has spectrum analysis enabled.

Parameters:
  • world_context_object (Object) –

  • band_settings (Array[SoundSubmixSpectralAnalysisBandSettings]) – The frequency bands to analyze and their envelope-following settings.

  • on_submix_spectral_analysis_bp (OnSubmixSpectralAnalysisBP) – Event to fire when new spectral data is available.

  • update_rate (float) – How often to retrieve the data from the spectral analyzer and broadcast the event. Max is 30 times per second.

  • decibel_noise_floor (float) – Decibel Noise Floor to consider as silence when using a Decibel Spectrum Type.

  • do_normalize (bool) – If true, output band values will be normalized between zero and one.

  • do_auto_range (bool) – If true, output band values will have their ranges automatically adjusted to the minimum and maximum values in the audio. Output band values will be normalized between zero and one.

  • auto_range_attack_time (float) – The time (in seconds) it takes for the range to expand to 90% of a larger range.

  • auto_range_release_time (float) – The time (in seconds) it takes for the range to shrink to 90% of a smaller range.

property ambisonics_plugin_settings: SoundfieldEncodingSettingsBase

[Read-Write] Ambisonics Plugin Settings: Optional settings used by plugins which support ambisonics file playback.

Type:

(SoundfieldEncodingSettingsBase)

[Read-Write] Audio Link Settings: Optional Audio Link Settings Object

Type:

(AudioLinkSettingsAbstract)

property dry_level: float

[Read-Write] Dry Level: Deprecated – The dry level of the submix. Applied before submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of DryLevelModulation.

Type:

(float)

property dry_level_modulation: SoundModulationDestinationSettings

[Read-Write] Dry Level Modulation: The dry level of the submix in Decibels. Applied before submix effects and analysis are performed.

Type:

(SoundModulationDestinationSettings)

property envelope_follower_attack_time: int

[Read-Write] Envelope Follower Attack Time: The attack time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this submix.

Type:

(int32)

property envelope_follower_release_time: int

[Read-Write] Envelope Follower Release Time: The release time in milliseconds for the envelope follower. Delegate callbacks can be registered to get the envelope value of sounds played with this submix.

Type:

(int32)

property mute_when_backgrounded: bool

[Read-Only] Mute when Backgrounded: Mute this submix when the application is muted or in the background. Used to prevent submix effect tails from continuing when tabbing out of application or if application is muted.

Type:

(bool)

property on_submix_recorded_file_done: OnSubmixRecordedFileDone

[Read-Write] On Submix Recorded File Done: Blueprint delegate for when a recorded file is finished exporting.

Type:

(OnSubmixRecordedFileDone)

property output_volume: float

[Read-Write] Output Volume: Deprecated – The output volume of the submix. Applied after submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of OutputVolumeModulation.

Type:

(float)

property output_volume_modulation: SoundModulationDestinationSettings

[Read-Write] Output Volume Modulation: The output volume of the submix in Decibels. Applied after submix effects and analysis are performed.

Type:

(SoundModulationDestinationSettings)

remove_spectral_analysis_delegate(world_context_object, on_submix_spectral_analysis_bp) None

Remove a spectral analysis delegate.

Parameters:

[Read-Write] Send to Audio Link: Whether to send this Submix to AudioLink (when AudioLink is Enabled)

Type:

(bool)

set_submix_dry_level(world_context_object, dry_level) None

Sets the output volume of the submix in linear gain. This dynamic level acts as a multiplier on the DryLevel property of this submix.

Parameters:
  • world_context_object (Object) –

  • dry_level (float) –

set_submix_output_volume(world_context_object, output_volume) None

Sets the output volume of the submix in linear gain. This dynamic volume acts as a multiplier on the OutputVolume property of this submix.

Parameters:
  • world_context_object (Object) –

  • output_volume (float) –

set_submix_wet_level(world_context_object, wet_level) None

Sets the output volume of the submix in linear gain. This dynamic level acts as a multiplier on the WetLevel property of this submix.

Parameters:
  • world_context_object (Object) –

  • wet_level (float) –

start_envelope_following(world_context_object) None

Start envelope following the submix output. Register with OnSubmixEnvelope to receive envelope follower data in BP.

Parameters:

world_context_object (Object) –

start_recording_output(world_context_object, expected_duration) None

Start recording the audio from this submix.

Parameters:
  • world_context_object (Object) –

  • expected_duration (float) –

start_spectral_analysis(world_context_object, fft_size=FFTSize.DEFAULT_SIZE, interpolation_method=FFTPeakInterpolationMethod.LINEAR, window_type=FFTWindowType.HANN, hop_size=0.000000, spectrum_type=AudioSpectrumType.MAGNITUDE_SPECTRUM) None

Start spectrum analysis of the audio output.

Parameters:
stop_envelope_following(world_context_object) None

Start envelope following the submix output. Register with OnSubmixEnvelope to receive envelope follower data in BP.

Parameters:

world_context_object (Object) –

stop_recording_output(world_context_object, export_type, name, path, existing_sound_wave_to_overwrite=None) None

Finish recording the audio from this submix and export it as a wav file or a USoundWave.

Parameters:
stop_spectral_analysis(world_context_object) None

Stop spectrum analysis of the audio output.

Parameters:

world_context_object (Object) –

property submix_effect_chain: Array[SoundEffectSubmixPreset]

[Read-Only] Submix Effect Chain

Type:

(Array[SoundEffectSubmixPreset])

property wet_level: float

[Read-Write] Wet Level: Deprecated – The wet level of the submix. Applied after submix effects and analysis are performed. deprecated: 5.0 - Removed in favor of WetLevelModulation.

Type:

(float)

property wet_level_modulation: SoundModulationDestinationSettings

[Read-Write] Wet Level Modulation: The wet level of the submixin Decibels. Applied after submix effects and analysis are performed.

Type:

(SoundModulationDestinationSettings)