pub trait AudioMasterImpl {
// Required methods
fn new() -> AudioMaster;
fn new_with_buffer_size(buffer_size: usize) -> AudioMaster;
fn new_with_fps(fps: usize) -> AudioMaster;
fn stop_sys_stream(&mut self) -> Result<(), AudioMasterError>;
fn start_sys_stream(&mut self) -> Result<(), AudioMasterError>;
fn try_to_initialize_stream(&mut self) -> Result<(), AudioMasterError>;
fn devices(&self) -> Vec<Device>;
fn get_current_device(&self) -> Option<Device>;
fn change_device(&self, device_id: usize) -> Result<(), AudioMasterError>;
fn create_stream_f32(
&mut self,
settings: &AudioStreamSettings,
feeder: Box<dyn AudioStreamFeederTrait<f32>>,
) -> AudioStream<f32>;
fn create_stream_f64(
&mut self,
settings: &AudioStreamSettings,
feeder: Box<dyn AudioStreamFeederTrait<f64>>,
) -> AudioStream<f64>;
}Expand description
Public API trait for the audio master, which manages devices and streams.
Required Methods§
Sourcefn new() -> AudioMaster
fn new() -> AudioMaster
Creates a new audio master with default settings.
Sourcefn new_with_buffer_size(buffer_size: usize) -> AudioMaster
fn new_with_buffer_size(buffer_size: usize) -> AudioMaster
Creates a new audio master with a specified buffer size.
Sourcefn new_with_fps(fps: usize) -> AudioMaster
fn new_with_fps(fps: usize) -> AudioMaster
Creates a new audio master with a specified frame rate (FPS).
Sourcefn stop_sys_stream(&mut self) -> Result<(), AudioMasterError>
fn stop_sys_stream(&mut self) -> Result<(), AudioMasterError>
Stops the main system audio stream.
Sourcefn start_sys_stream(&mut self) -> Result<(), AudioMasterError>
fn start_sys_stream(&mut self) -> Result<(), AudioMasterError>
Starts the main system audio stream.
Sourcefn try_to_initialize_stream(&mut self) -> Result<(), AudioMasterError>
fn try_to_initialize_stream(&mut self) -> Result<(), AudioMasterError>
Attempts to initialize the audio stream.
Sourcefn get_current_device(&self) -> Option<Device>
fn get_current_device(&self) -> Option<Device>
Gets the currently selected device, if any.
Sourcefn change_device(&self, device_id: usize) -> Result<(), AudioMasterError>
fn change_device(&self, device_id: usize) -> Result<(), AudioMasterError>
Changes the current audio device by ID.
Sourcefn create_stream_f32(
&mut self,
settings: &AudioStreamSettings,
feeder: Box<dyn AudioStreamFeederTrait<f32>>,
) -> AudioStream<f32>
fn create_stream_f32( &mut self, settings: &AudioStreamSettings, feeder: Box<dyn AudioStreamFeederTrait<f32>>, ) -> AudioStream<f32>
Creates a new f32 audio stream with the given settings and feeder.
Sourcefn create_stream_f64(
&mut self,
settings: &AudioStreamSettings,
feeder: Box<dyn AudioStreamFeederTrait<f64>>,
) -> AudioStream<f64>
fn create_stream_f64( &mut self, settings: &AudioStreamSettings, feeder: Box<dyn AudioStreamFeederTrait<f64>>, ) -> AudioStream<f64>
Creates a new f64 audio stream with the given settings and feeder.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.