Mixing & Effects
Categories:
GS_Audio provides a named mixing bus system built on custom MiniAudio nodes. Each GS_MixingBus is a node in the audio graph with its own volume level and an optional chain of audio filters. Buses are configured in the Audio Manager Inspector and can be controlled at runtime through the mixing request bus.
The effects system includes 9 built-in filter types covering frequency shaping, equalization, delay, and reverb. Environmental influence effects allow game world volumes (rooms, weather zones) to push effects onto buses with priority-based stacking.
For usage guides and setup examples, see The Basics: GS_Audio.
Contents
GS_MixingBus
Custom MiniAudio node for mixing and effects processing.
| Field | Value |
|---|---|
| TypeId | {26E5BA8D-33E0-42E4-BBC0-6A3B2C46F52E} |
API Reference
Request Bus: GS_MixingRequestBus
Mixer control commands. Singleton bus – Single address, single handler.
| Method | Parameters | Returns | Description |
|---|---|---|---|
SetBusVolume | const AZStd::string& busName, float volume | void | Sets the volume of a named mixing bus (0.0 to 1.0). |
GetBusVolume | const AZStd::string& busName | float | Returns the current volume of a named mixing bus. |
MuteBus | const AZStd::string& busName, bool mute | void | Mutes or unmutes a named mixing bus. |
IsBusMuted | const AZStd::string& busName | bool | Returns whether a named mixing bus is currently muted. |
ApplyBusEffects | const AZStd::string& busName, const AudioBusEffects& effects | void | Applies an effects chain to a named mixing bus, replacing any existing effects. |
ClearBusEffects | const AZStd::string& busName | void | Removes all effects from a named mixing bus. |
PushInfluenceEffects | const AZStd::string& busName, const AudioBusInfluenceEffects& effects | void | Pushes environmental influence effects onto a bus with priority stacking. |
PopInfluenceEffects | const AZStd::string& busName, int priority | void | Removes influence effects at the specified priority level from a bus. |
Audio Filters
All 9 built-in filter types. Each filter is configured as part of an effects chain applied to a mixing bus.
| Filter | Type | Description |
|---|---|---|
| GS_LowPassFilter | Frequency cutoff | Attenuates frequencies above the cutoff point. Used for muffling, distance simulation, and underwater effects. |
| GS_HighPassFilter | Frequency cutoff | Attenuates frequencies below the cutoff point. Used for thinning audio, radio/telephone effects. |
| GS_BandPassFilter | Band isolation | Passes only frequencies within a specified band, attenuating everything outside. Combines low-pass and high-pass behavior. |
| GS_NotchFilter | Band removal | Attenuates frequencies within a narrow band while passing everything outside. The inverse of band-pass. |
| GS_PeakingEQFilter | Band boost/cut | Boosts or cuts frequencies around a center frequency with configurable bandwidth. Used for tonal shaping. |
| GS_LowShelfFilter | Low frequency shelf | Boosts or cuts all frequencies below a threshold by a fixed amount. Used for bass adjustment. |
| GS_HighShelfFilter | High frequency shelf | Boosts or cuts all frequencies above a threshold by a fixed amount. Used for treble adjustment. |
| GS_DelayFilter | Echo/delay | Produces delayed repetitions of the input signal. Configurable delay time and feedback amount. |
| GS_ReverbFilter | Room reverb | Simulates room acoustics by adding dense reflections. Configurable room size and damping. |
Data Structures
BusEffectsPair
Maps a bus name to an effects chain configuration. Used in the Audio Manager’s Inspector to define per-bus effects at design time.
| Field | Value |
|---|---|
| TypeId | {AD9E26C9-C172-42BF-B38C-BB06FC704E36} |
| Field | Type | Description |
|---|---|---|
| Bus Name | AZStd::string | The name of the mixing bus this effects chain applies to. |
| Effects | AudioBusEffects | The effects chain configuration for this bus. |
AudioBusEffects
A collection of audio filter configurations that form an effects chain on a mixing bus.
| Field | Value |
|---|---|
| TypeId | {15EC6932-1F88-4EC0-9683-6D80AE982820} |
| Field | Type | Description |
|---|---|---|
| Filters | AZStd::vector<AudioFilter> | Ordered list of audio filters applied in sequence. |
AudioBusInfluenceEffects
Environmental effects with priority-based stacking. Game world volumes (rooms, weather zones, underwater areas) push influence effects onto mixing buses. Higher priority influences override lower ones.
| Field | Value |
|---|---|
| TypeId | {75D039EC-7EE2-4988-A2ED-86689449B575} |
| Field | Type | Description |
|---|---|---|
| Priority | int | Stacking priority. Higher values override lower values when multiple influences target the same bus. |
| Effects | AudioBusEffects | The effects chain to apply as an environmental influence. |
See Also
For conceptual overviews and usage guides:
- GS_Audio Overview – Top-level audio gem documentation
- The Basics: GS_Audio – Scripting-level usage guide
For component references:
- Audio Manager – Master controller that owns the mixing bus graph
For related resources:
- Audio Events – Events route their output through mixing buses
Get GS_Audio
GS_Audio — Explore this gem on the product page and add it to your project.