AudioServer

Inherits: Object

低级音频访问的服务器接口。

描述

AudioServer是一个音频访问的低级服务器接口。它负责创建样本数据(可播放的音频)以及通过语音接口进行播放。

教程

属性

int

bus_count

1

String

device

“Default”

float

global_rate_scale

1.0

方法

void

add_bus ( int at_position=-1 )

void

add_bus_effect ( int bus_idx, AudioEffect effect, int at_position=-1 )

String

capture_get_device ( )

Array

capture_get_device_list ( )

void

capture_set_device ( String name )

AudioBusLayout

generate_bus_layout ( ) const

int

get_bus_channels ( int bus_idx ) const

AudioEffect

get_bus_effect ( int bus_idx, int effect_idx )

int

get_bus_effect_count ( int bus_idx )

AudioEffectInstance

get_bus_effect_instance ( int bus_idx, int effect_idx, int channel=0 )

int

get_bus_index ( String bus_name ) const

String

get_bus_name ( int bus_idx ) const

float

get_bus_peak_volume_left_db ( int bus_idx, int channel ) const

float

get_bus_peak_volume_right_db ( int bus_idx, int channel ) const

String

get_bus_send ( int bus_idx ) const

float

get_bus_volume_db ( int bus_idx ) const

Array

get_device_list ( )

float

get_mix_rate ( ) const

float

get_output_latency ( ) const

SpeakerMode

get_speaker_mode ( ) const

float

get_time_since_last_mix ( ) const

float

get_time_to_next_mix ( ) const

bool

is_bus_bypassing_effects ( int bus_idx ) const

bool

is_bus_effect_enabled ( int bus_idx, int effect_idx ) const

bool

is_bus_mute ( int bus_idx ) const

bool

is_bus_solo ( int bus_idx ) const

void

lock ( )

void

move_bus ( int index, int to_index )

void

remove_bus ( int index )

void

remove_bus_effect ( int bus_idx, int effect_idx )

void

set_bus_bypass_effects ( int bus_idx, bool enable )

void

set_bus_effect_enabled ( int bus_idx, int effect_idx, bool enabled )

void

set_bus_layout ( AudioBusLayout bus_layout )

void

set_bus_mute ( int bus_idx, bool enable )

void

set_bus_name ( int bus_idx, String name )

void

set_bus_send ( int bus_idx, String send )

void

set_bus_solo ( int bus_idx, bool enable )

void

set_bus_volume_db ( int bus_idx, float volume_db )

void

swap_bus_effects ( int bus_idx, int effect_idx, int by_effect_idx )

void

unlock ( )

信号

  • bus_layout_changed ( )

AudioBusLayout改变时发出。

枚举

enum SpeakerMode:

  • SPEAKER_MODE_STEREO = 0 —- 检测到两个或更少的扬声器。

  • SPEAKER_SURROUND_31 = 1 —- 检测到3.1声道环绕声设置。

  • SPEAKER_SURROUND_51 = 2 —- 检测到5.1声道环绕声设置。

  • SPEAKER_SURROUND_71 = 3 —- 检测到7.1声道环绕声设置。

属性说明

Default

1

Setter

set_bus_count(value)

Getter

get_bus_count()

可用音频总线的数量。


Default

“Default”

Setter

set_device(value)

Getter

get_device()

用于音频输出的当前设备的名称(请参阅get_device_list)。


Default

1.0

Setter

set_global_rate_scale(value)

Getter

get_global_rate_scale()

缩放播放音频的速率(即将其设置为0.5将使音频播放速度提高一倍)。

方法说明

  • void add_bus ( int at_position=-1 )

at_position处添加一条总线。


bus_idxatat_position处给总线添加AudioEffect效果。


  • String capture_get_device ( )

当前音频输入设备的名称(参阅capture_get_device_list)。


  • Array capture_get_device_list ( )

返回系统上检测到的所有音频输入设备的名称。


  • void capture_set_device ( String name )

设置用于音频采集的音频输入设备。


使用可用的总线和效果生成AudioBusLayout


  • int get_bus_channels ( int bus_idx ) const

返回索引为bus_idx的总线通道数。


返回总线 bus_idx in effect_idx 位置的 AudioEffect


  • int get_bus_effect_count ( int bus_idx )

返回bus_idx处总线上的效果数。


返回分配给给定总线和效果指数(以及可选的通道)的AudioEffectInstance


返回名称为bus_name的总线的索引。


返回索引为 bus_idx 的总线名称。


  • float get_bus_peak_volume_left_db ( int bus_idx, int channel ) const

返回总线索引bus_idx和通道索引channel处左扬声器的峰值音量。


  • float get_bus_peak_volume_right_db ( int bus_idx, int channel ) const

返回总线索引bus_idx和通道索引channel处右扬声器的峰值音量。


返回位于索引bus_idx处的总线所发送的总线名称。


  • float get_bus_volume_db ( int bus_idx ) const

返回索引bus_idx处总线的音量,单位为dB。


  • Array get_device_list ( )

返回系统中检测到的所有音频设备的名称。


  • float get_mix_rate ( ) const

返回AudioServer输出的采样率。


  • float get_output_latency ( ) const

返回音频驱动器的输出延迟。


返回扬声器的配置。


  • float get_time_since_last_mix ( ) const

返回自上次混合以来的相对时间。


  • float get_time_to_next_mix ( ) const

返回下一次混合之前的相对时间。


  • bool is_bus_bypassing_effects ( int bus_idx ) const

如果true,则位于indexbus_idx的总线会绕过效果。


  • bool is_bus_effect_enabled ( int bus_idx, int effect_idx ) const

如果true,则启用索引effect_idx在索引bus_idx的总线上的效果。


  • bool is_bus_mute ( int bus_idx ) const

如果为true,则索引bus_idx处的总线被静音。


  • bool is_bus_solo ( int bus_idx ) const

如果为true,则索引bus_idx处的总线处于solo模式。


  • void lock ( )

锁定音频驱动程序的主循环。

注意:记得事后解锁。


  • void move_bus ( int index, int to_index )

将总线从索引index移动到索引to_index


  • void remove_bus ( int index )

移除索引index处的总线。


  • void remove_bus_effect ( int bus_idx, int effect_idx )

将索引 effect_idx 的效果从索引 bus_idx 的总线上删除。


  • void set_bus_bypass_effects ( int bus_idx, bool enable )

如果true,则位于indexbus_idx的总线会绕过效果。


  • void set_bus_effect_enabled ( int bus_idx, int effect_idx, bool enabled )

如果true,则启用索引effect_idx在索引bus_idx的总线上的效果。


覆盖当前使用的AudioBusLayout


  • void set_bus_mute ( int bus_idx, bool enable )

如果为true,则索引bus_idx处的总线被静音。


  • void set_bus_name ( int bus_idx, String name )

将索引bus_idx处的总线名称设置为name


  • void set_bus_send ( int bus_idx, String send )

bus_idx 处的总线输出连接到名为 send 的总线。


  • void set_bus_solo ( int bus_idx, bool enable )

如果为true,则索引bus_idx处的总线处于solo模式。


  • void set_bus_volume_db ( int bus_idx, float volume_db )

将索引 bus_idx 处的总线容量设置为 volume_db


  • void swap_bus_effects ( int bus_idx, int effect_idx, int by_effect_idx )

bus_idx中交换两个效果的位置。


  • void unlock ( )

解锁音频驱动程序的主循环。(锁定后,你始终需要手动解锁它。)