pub struct Convolver {
pub fft_size: usize,
pub previous_tail: Vec<f32>,
/* private fields */
}Expand description
Overlap-add convolver based on complex FFTs.
Fields§
§fft_size: usize§previous_tail: Vec<f32>Implementations§
Source§impl Convolver
impl Convolver
Sourcepub fn new(ir_signal: &[f32], fft_size: usize) -> Self
pub fn new(ir_signal: &[f32], fft_size: usize) -> Self
Create a new convolver for a single-channel impulse response.
Sourcepub fn process(&mut self, input_buffer: &[f32]) -> Vec<f32>
pub fn process(&mut self, input_buffer: &[f32]) -> Vec<f32>
Process a block of input samples and return the convolved output.
The output length matches the input length. Internal tails are preserved between calls.
Sourcepub fn clear_state(&mut self)
pub fn clear_state(&mut self)
Reset internal FFT history and tail buffers.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Convolver
impl !RefUnwindSafe for Convolver
impl Send for Convolver
impl Sync for Convolver
impl Unpin for Convolver
impl !UnwindSafe for Convolver
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