AudioServer
Inherits: Object
Server interface for low-level audio access.
Description
AudioServer
is a low-level server interface for audio access. It is in charge of creating sample data (playable audio) as well as its playback via a voice interface.
Tutorials
Properties
int | bus_count | 1 |
String | device | "Default" |
float | global_rate_scale | 1.0 |
Methods
Signals
bus_layout_changed ( )
Emitted when the AudioBusLayout changes.
Enumerations
enum SpeakerMode:
- SPEAKER_MODE_STEREO = 0 --- Two or fewer speakers were detected.
- SPEAKER_SURROUND_31 = 1 --- A 3.1 channel surround setup was detected.
- SPEAKER_SURROUND_51 = 2 --- A 5.1 channel surround setup was detected.
- SPEAKER_SURROUND_71 = 3 --- A 7.1 channel surround setup was detected.
Property Descriptions
int bus_count
Default | 1 |
Setter | set_bus_count(value) |
Getter | get_bus_count() |
Number of available audio buses.
String device
Default | "Default" |
Setter | set_device(value) |
Getter | get_device() |
Name of the current device for audio output (see get_device_list).
float global_rate_scale
Default | 1.0 |
Setter | set_global_rate_scale(value) |
Getter | get_global_rate_scale() |
Scales the rate at which audio is played (i.e. setting it to 0.5
will make the audio be played twice as fast).
Method Descriptions
void add_bus ( int at_position=-1 )
Adds a bus at at_position
.
void add_bus_effect ( int bus_idx, AudioEffect effect, int at_position=-1 )
Adds an AudioEffect effect to the bus bus_idx
at at_position
.
String capture_get_device ( )
Name of the current device for audio input (see capture_get_device_list).
Array capture_get_device_list ( )
Returns the names of all audio input devices detected on the system.
void capture_set_device ( String name )
Sets which audio input device is used for audio capture.
AudioBusLayout generate_bus_layout ( ) const
Generates an AudioBusLayout using the available buses and effects.
int get_bus_channels ( int bus_idx ) const
Returns the amount of channels of the bus at index bus_idx
.
AudioEffect get_bus_effect ( int bus_idx, int effect_idx )
Returns the AudioEffect at position effect_idx
in bus bus_idx
.
int get_bus_effect_count ( int bus_idx )
Returns the number of effects on the bus at bus_idx
.
AudioEffectInstance get_bus_effect_instance ( int bus_idx, int effect_idx, int channel=0 )
Returns the AudioEffectInstance assigned to the given bus and effect indices (and optionally channel).
int get_bus_index ( String bus_name ) const
Returns the index of the bus with the name bus_name
.
String get_bus_name ( int bus_idx ) const
Returns the name of the bus with the index bus_idx
.
float get_bus_peak_volume_left_db ( int bus_idx, int channel ) const
Returns the peak volume of the left speaker at bus index bus_idx
and channel index channel
.
float get_bus_peak_volume_right_db ( int bus_idx, int channel ) const
Returns the peak volume of the right speaker at bus index bus_idx
and channel index channel
.
String get_bus_send ( int bus_idx ) const
Returns the name of the bus that the bus at index bus_idx
sends to.
float get_bus_volume_db ( int bus_idx ) const
Returns the volume of the bus at index bus_idx
in dB.
Array get_device_list ( )
Returns the names of all audio devices detected on the system.
float get_mix_rate ( ) const
Returns the sample rate at the output of the AudioServer
.
float get_output_latency ( ) const
Returns the audio driver's output latency.
SpeakerMode get_speaker_mode ( ) const
Returns the speaker configuration.
float get_time_since_last_mix ( ) const
Returns the relative time since the last mix occurred.
float get_time_to_next_mix ( ) const
Returns the relative time until the next mix occurs.
bool is_bus_bypassing_effects ( int bus_idx ) const
If true
, the bus at index bus_idx
is bypassing effects.
bool is_bus_effect_enabled ( int bus_idx, int effect_idx ) const
If true
, the effect at index effect_idx
on the bus at index bus_idx
is enabled.
bool is_bus_mute ( int bus_idx ) const
If true
, the bus at index bus_idx
is muted.
bool is_bus_solo ( int bus_idx ) const
If true
, the bus at index bus_idx
is in solo mode.
void lock ( )
Locks the audio driver's main loop.
Note: Remember to unlock it afterwards.
void move_bus ( int index, int to_index )
Moves the bus from index index
to index to_index
.
void remove_bus ( int index )
Removes the bus at index index
.
void remove_bus_effect ( int bus_idx, int effect_idx )
Removes the effect at index effect_idx
from the bus at index bus_idx
.
void set_bus_bypass_effects ( int bus_idx, bool enable )
If true
, the bus at index bus_idx
is bypassing effects.
void set_bus_effect_enabled ( int bus_idx, int effect_idx, bool enabled )
If true
, the effect at index effect_idx
on the bus at index bus_idx
is enabled.
void set_bus_layout ( AudioBusLayout bus_layout )
Overwrites the currently used AudioBusLayout.
void set_bus_mute ( int bus_idx, bool enable )
If true
, the bus at index bus_idx
is muted.
void set_bus_name ( int bus_idx, String name )
Sets the name of the bus at index bus_idx
to name
.
void set_bus_send ( int bus_idx, String send )
Connects the output of the bus at bus_idx
to the bus named send
.
void set_bus_solo ( int bus_idx, bool enable )
If true
, the bus at index bus_idx
is in solo mode.
void set_bus_volume_db ( int bus_idx, float volume_db )
Sets the volume of the bus at index bus_idx
to volume_db
.
void swap_bus_effects ( int bus_idx, int effect_idx, int by_effect_idx )
Swaps the position of two effects in bus bus_idx
.
void unlock ( )
Unlocks the audio driver's main loop. (After locking it, you should always unlock it.)
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_audioserver.html