pub trait AudioBackend:
Send
+ Sync
+ Debug {
// Required methods
fn backend_type(&self) -> BackendType;
fn config(&self) -> &AudioConfig;
fn config_mut(&mut self) -> &mut AudioConfig;
fn init(&mut self) -> IoResult<()>;
fn start(&mut self) -> IoResult<()>;
fn stop(&mut self) -> IoResult<()>;
fn read(&mut self, buffer: &mut [f32]) -> IoResult<usize>;
fn write(&mut self, buffer: &[f32]) -> IoResult<usize>;
fn xruns(&self) -> u32;
fn latency(&self) -> Duration;
fn list_input_devices(&self) -> Vec<String>;
fn list_output_devices(&self) -> Vec<String>;
}Expand description
Трейт аудио бэкенда
Required Methods§
Sourcefn backend_type(&self) -> BackendType
fn backend_type(&self) -> BackendType
Получить тип бэкенда
Sourcefn config(&self) -> &AudioConfig
fn config(&self) -> &AudioConfig
Получить конфигурацию
Sourcefn config_mut(&mut self) -> &mut AudioConfig
fn config_mut(&mut self) -> &mut AudioConfig
Получить мутабельную конфигурацию
Sourcefn list_input_devices(&self) -> Vec<String>
fn list_input_devices(&self) -> Vec<String>
Получить список доступных входных устройств
Sourcefn list_output_devices(&self) -> Vec<String>
fn list_output_devices(&self) -> Vec<String>
Получить список доступных выходных устройств