Skip to main content

AudioBackend

Trait AudioBackend 

Source
pub trait AudioBackend: Send {
    // Required methods
    fn start(&mut self, callback: AudioCallback) -> Result<()>;
    fn stop(&mut self) -> Result<()>;
    fn sample_rate(&self) -> u32;
    fn buffer_size(&self) -> u32;
    fn channels(&self) -> u16;
}
Expand description

Trait for audio output backends. Allows swapping real hardware for an in-memory test backend.

Required Methods§

Source

fn start(&mut self, callback: AudioCallback) -> Result<()>

Start the audio stream, calling callback for each buffer.

Source

fn stop(&mut self) -> Result<()>

Stop the audio stream.

Source

fn sample_rate(&self) -> u32

Sample rate the backend is running at.

Source

fn buffer_size(&self) -> u32

Buffer size in samples per channel.

Source

fn channels(&self) -> u16

Number of output channels.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§