Base — ships in GS_Audio.
Mixing has two parts, and it is worth separating them from the start.
Volume channels are the grouping layer — voice, environment, combat SFX — each with its own level, feeding Master. This is the layer your options menu drives.
Mix effects are the processing layer — filters, EQ, delay, reverb, character effects — authored as named chains on components and routed by name. This is the free tier’s authoring surface for the DSP palette, and it is not a reduced one: it exposes the same 22 processors that Audio Pro exposes as graph nodes.
For usage guides and setup examples, see The Basics: GS_Audio.
Contents
Volume Channels
GS_MixingBus
A custom miniaudio node that mixes its inputs, applies a level, and optionally runs an effects chain.
| Field | Value |
|---|---|
| TypeId | {26E5BA8D-33E0-42E4-BBC0-6A3B2C46F52E} |
The Audio Manager owns a named set of these. GetMixingChannelNames enumerates them and ChangeChannelVolume sets a level.
This is the Volume Channel stage of the canonical signal chain: grouped sound types feeding Master. It is orthogonal to spatialization — a voice line, a footstep and a spell all get positional audio, and all three route to different channels.
Channels are the natural attachment point for the options system’s audio sliders, which is exactly what the shipped audio apply targets do.
Environmental Influence
An entity in the world can temporarily impose an effect set on channels — walk into a cave and everything gains reverb; walk out and it lifts.
| Method | Parameters | Description |
|---|---|---|
ApplyAudioEffectInfluence | influencer, effects | Push an effect set onto channels on behalf of an influencing entity. |
RemoveAudioEffectInfluence | influencer | Remove that entity’s contribution. |
Influences stack by priority and are keyed by the entity that applied them, so removal is unambiguous even when several influences overlap. Two overlapping zones resolve by priority rather than by whichever fired last.
Influence reverb and geometric reflections are alternatives
Influence-driven reverb is the manual way to fake a room. Audio Pro’s geometry-driven reflections are the real way, derived from actual world geometry. They occupy the same layer of the signal chain and must not be stacked — doing so double-reverbs the sound.Mix Effects
The processing layer. A MixEffectComponent holds an ordered chain of effects, registers it under a name, and feeds its output somewhere — another chain, or a volume channel. Sources route in by naming that chain as their mixing channel.
Twenty-two effect types are available, in four families: biquad filters, time and space, character and modulation, and utility.
API Reference
Request Bus: GS_MixingRequestBus
Channel control. Singleton bus — single address, single handler.
| Method | Parameters | Returns | Description |
|---|---|---|---|
SetBusVolume | const AZStd::string& busName, float volume | void | Sets the level of a named channel (0.0 to 1.0). |
GetBusVolume | const AZStd::string& busName | float | Returns the current level of a named channel. |
MuteBus | const AZStd::string& busName, bool mute | void | Mutes or unmutes a named channel. |
IsBusMuted | const AZStd::string& busName | bool | Returns whether a named channel is muted. |
ApplyBusEffects | const AZStd::string& busName, const AudioBusEffects& effects | void | Applies an effects chain to a channel, replacing any existing chain. |
ClearBusEffects | const AZStd::string& busName | void | Removes all effects from a channel. |
PushInfluenceEffects | const AZStd::string& busName, const AudioBusInfluenceEffects& effects | void | Pushes environmental influence effects onto a channel with priority stacking. |
PopInfluenceEffects | const AZStd::string& busName, int priority | void | Removes influence effects at the given priority level. |
Master and per-channel volume are also reachable from AudioManagerRequestBus via ChangeMasterVolume and ChangeChannelVolume.
Data Structures
| Type | Purpose |
|---|---|
| BusEffectsPair {#bus-effects-pair} | Maps a channel name to an effects chain. This is how channels are authored on the Audio Manager. |
| AudioBusEffects {#audio-bus-effects} | An effects chain applied to a channel. |
| AudioBusInfluenceEffects {#audio-bus-influence-effects} | An effect set contributed by a world influencer, carrying its priority. |
See Also
For related systems:
- Mix Effects — the 22 effect types and the component that chains them
- Audio Manager — owns the channel set
- Audio Events — an event’s mixing channel selects a target here
- Audio Signal Model — where this layer sits
- GS_Options — drives channel levels from player settings
For conceptual overviews and usage guides:
Get GS_Audio
GS_Audio — Explore this gem on the product page and add it to your project.