Mixer API#
FmodAudioBus#
Inherits: RefCounted
Audio bus used for mixing, with effect processing support
Description#
FmodAudioBus represents FMOD audio audio mixing bus. bus FmodChannelGroup used for audio routing, and can FmodAudioEffect
Bus FmodAudioBusLayout manages hierarchy. bus, bus through routing.
Bus can:
Organizes audio into logical categories, such as music, sound effects, and dialogue.
Sound effect.
Controls audio volume and routing.
Mixing solo / mute.
Properties#
Methods#
void init_bus(name: String, parent: FmodChannelGroup = null)#
Specified name and can channel group bus.
If the name is "Master", the FMOD master channel group is used directly as the bus; otherwise a new FmodChannelGroup is created and connected to the parent channel group.
void set_parent(parent: FmodChannelGroup)#
Sets bus output to channel group.
If provides channel group, connection to FMOD master channel group.
FmodChannelGroup get_bus() const#
Returns bus used for audio routing FmodChannelGroup.
If bus, returns null
FmodChannelGroup get_parent() const#
Returns bus output to FmodChannelGroup.
For bus returns null
String get_bus_name() const#
Returns audio bus name.
void add_effect(effect: FmodAudioEffect, index: int = 0)#
Bus adds audio effect, and effect to internal channel group.
Current will effect to effect; if bus bypass, adds after will synchronizes bypass state.
void remove_effect(index: int)#
Bus removes specified index audio effect.
Removes when will effect internal channel group.
FmodAudioEffect get_effect(index: int) const#
Returns effect chain specified index FmodAudioEffect.
Returns null if the index is out of range.
void set_volume_db(volume_db: float)#
Sets bus volume, unit as.
float get_volume_db() const#
Returns bus volume, unit as.
If bus, returns 0.0
void set_solo(solo: bool)#
Sets bus solo state.
Solo state needs FmodAudioBusLayout calculates and to bus mute state.
bool is_solo() const#
Returns true if this bus is soloed.
void set_mute(mute: bool)#
Sets mute state.
Sets, FMOD mute state apply_mute()
bool is_mute() const#
Returns true if bus sets as mute.
void apply_mute(mute: bool)#
Mute state and solo state, mute state to internal channel group.
Bus solo state when, solo bus will mute.
void set_bypass(bypass: bool)#
Sets bus effect bypass state.
Bypass state, sync_bypass() after will synchronizes to effect.
bool is_bypass() const#
Returns true if bus effect bypass.
void sync_bypass()#
Bus bypass state synchronizes to internal channel group DSP.
Used for in bypass or effect after effect chain state.
FmodAudioBusLayout#
Inherits: Resource
manages audio bus and.
Description#
FmodAudioBusLayout manages FMOD audio audio bus hierarchy. FmodAudioBus instance.
Will and Godot AudioServer bus layout synchronizes, and Godot audio.
Key features:
Bus manages (bus bus).
Bus volume, solo, mute and bypass state controls.
Bus effect chain manages.
And Godot AudioServer synchronizes.
Methods#
void create_audio_bus(name: String, parent: FmodAudioBus = null)#
Specified name and can creates audio bus.
Bus name. Master bus in, removes.
FmodAudioBus get_audio_bus(name: String) const#
Returns the FmodAudioBus with the specified name.
If in name bus, returns null
bool has_audio_bus(name: String) const#
Returns true if in specified name bus.
void remove_audio_bus(name: String)#
Removes specified name audio bus.
Warning
Master bus removes.
void set_bus_volume(name: String, volume_db: float)#
Sets the volume of the specified bus, in decibels.
float get_bus_volume(name: String) const#
Returns the volume of the specified bus, in decibels.
If bus in or, returns 0.0
void set_bus_solo(name: String, solo: bool)#
Sets the solo state of the specified bus and updates the final mute state of all buses.
bool bus_is_solo(name: String) const#
Returns true if specified bus solo state.
void set_bus_mute(name: String, mute: bool)#
Sets the user mute state of the specified bus and updates the final mute state of all buses.
bool bus_is_mute(name: String) const#
Returns true if specified bus sets as mute.
void set_bus_bypass(name: String, bypass: bool)#
Sets the effect bypass state of the specified bus and immediately synchronizes it to the DSP on the bus.
bool bus_is_bypass(name: String) const#
Returns true if specified bus effect bypass.
void add_bus_effect(bus_name: String, effect: FmodAudioEffect, index: int = 0)#
Specified bus adds FmodAudioEffect
Effect will to bus internal channel group.
void remove_bus_effect(bus_name: String, index: int)#
Specified bus removes specified index audio effect.
FmodAudioEffect get_bus_effect(bus_name: String, index: int) const#
Returns the FmodAudioEffect at the specified index on the specified bus.
If bus or effect in, returns null
void sync_from_audio_server()#
And Godot AudioServer current bus layout synchronizes.
Synchronization preserves or creates the Master bus, rebuilds other buses, connects parent-child relationships, and synchronizes volume, mute, solo, bypass state, and supported Godot audio effects.