pub struct ReverbController { /* private fields */ }Expand description
A stereo reverb.
This is a safe wrapper around the CloudSeedCore ReverbController.
Implementations§
Source§impl ReverbController
impl ReverbController
Sourcepub fn new(sample_rate: f32, max_block_size: u32) -> Self
pub fn new(sample_rate: f32, max_block_size: u32) -> Self
Creates a reverb instance with the given sample rate
and maximum block size that will be passed to process.
Sourcepub fn max_block_size(&self) -> u32
pub fn max_block_size(&self) -> u32
Returns the maximum block size that can be passed to process for this instance.
Sourcepub fn process(
&mut self,
in_l: &[f32],
in_r: &[f32],
out_l: &mut [f32],
out_r: &mut [f32],
num_samples: u32,
)
pub fn process( &mut self, in_l: &[f32], in_r: &[f32], out_l: &mut [f32], out_r: &mut [f32], num_samples: u32, )
Processes a stereo signal.
All buffers must be at least num_samples long.
Panics if num_samples is greater than max_block_size.
Sourcepub fn set_sample_rate(&mut self, sample_rate: f32)
pub fn set_sample_rate(&mut self, sample_rate: f32)
Updates the reverb’s sample rate in Hz.
Sourcepub fn set_parameter(&mut self, id: ParamId, value: f32)
pub fn set_parameter(&mut self, id: ParamId, value: f32)
Applies a normalized parameter value in range 0..1 to the parameter with the given id.
Sourcepub fn get_parameter(&self, id: ParamId) -> f32
pub fn get_parameter(&self, id: ParamId) -> f32
Returns the normalized parameter value in range 0..1 for the given parameter id.
Sourcepub fn get_program(&self) -> Program
pub fn get_program(&self) -> Program
Returns a snapshot of all current parameter values. The returned Program can be used to serialize parameter state.
Sourcepub fn set_program(&mut self, program: &Program)
pub fn set_program(&mut self, program: &Program)
Loads a program, ending any ongoing reverb tail.