pub struct AudioSetup {
pub sample_rate: f64,
pub max_buffer_size: usize,
}Expand description
Standard audio setup configuration with sample rate and max buffer size.
Use this for most plugins that have sample-rate-dependent state, such as delays, filters, compressors, or any plugin with smoothing.
§Example
ⓘ
impl Plugin for DelayPlugin {
type Config = AudioSetup;
// ...
fn prepare(self, config: AudioSetup) -> DelayProcessor {
let buffer_size = (MAX_DELAY_SECONDS * config.sample_rate) as usize;
DelayProcessor {
params: self.params,
sample_rate: config.sample_rate, // Real value from start!
buffer: vec![0.0; buffer_size], // Correct allocation!
}
}
}Fields§
§sample_rate: f64Sample rate in Hz (e.g., 44100.0, 48000.0, 96000.0)
max_buffer_size: usizeMaximum number of samples per process() call
Trait Implementations§
Source§impl Clone for AudioSetup
impl Clone for AudioSetup
Source§fn clone(&self) -> AudioSetup
fn clone(&self) -> AudioSetup
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AudioSetup
impl Debug for AudioSetup
Source§impl PartialEq for AudioSetup
impl PartialEq for AudioSetup
impl ProcessorConfig for AudioSetup
impl StructuralPartialEq for AudioSetup
Auto Trait Implementations§
impl Freeze for AudioSetup
impl RefUnwindSafe for AudioSetup
impl Send for AudioSetup
impl Sync for AudioSetup
impl Unpin for AudioSetup
impl UnwindSafe for AudioSetup
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more