Trait rubato::VecResampler

source ·
pub trait VecResampler<T>: Send {
Show 14 methods // Required methods fn process( &mut self, wave_in: &[Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<Vec<Vec<T>>>; fn process_into_buffer( &mut self, wave_in: &[Vec<T>], wave_out: &mut [Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<(usize, usize)>; fn process_partial_into_buffer( &mut self, wave_in: Option<&[Vec<T>]>, wave_out: &mut [Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<(usize, usize)>; fn process_partial( &mut self, wave_in: Option<&[Vec<T>]>, active_channels_mask: Option<&[bool]> ) -> ResampleResult<Vec<Vec<T>>>; fn input_buffer_allocate(&self, filled: bool) -> Vec<Vec<T>>; fn input_frames_max(&self) -> usize; fn input_frames_next(&self) -> usize; fn nbr_channels(&self) -> usize; fn output_buffer_allocate(&self, filled: bool) -> Vec<Vec<T>>; fn output_frames_max(&self) -> usize; fn output_frames_next(&self) -> usize; fn output_delay(&self) -> usize; fn set_resample_ratio( &mut self, new_ratio: f64, ramp: bool ) -> ResampleResult<()>; fn set_resample_ratio_relative( &mut self, rel_ratio: f64, ramp: bool ) -> ResampleResult<()>;
}
Expand description

This is an wrapper trait implemented via the implement_resampler macro. The generic input and output types &[AsRef<[T]>] and &mut [AsMut<[T]>] are locked to &[Vec<T>] and &mut [Vec<T>].

Required Methods§

source

fn process( &mut self, wave_in: &[Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<Vec<Vec<T>>>

source

fn process_into_buffer( &mut self, wave_in: &[Vec<T>], wave_out: &mut [Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<(usize, usize)>

source

fn process_partial_into_buffer( &mut self, wave_in: Option<&[Vec<T>]>, wave_out: &mut [Vec<T>], active_channels_mask: Option<&[bool]> ) -> ResampleResult<(usize, usize)>

source

fn process_partial( &mut self, wave_in: Option<&[Vec<T>]>, active_channels_mask: Option<&[bool]> ) -> ResampleResult<Vec<Vec<T>>>

source

fn input_buffer_allocate(&self, filled: bool) -> Vec<Vec<T>>

source

fn input_frames_max(&self) -> usize

source

fn input_frames_next(&self) -> usize

source

fn nbr_channels(&self) -> usize

source

fn output_buffer_allocate(&self, filled: bool) -> Vec<Vec<T>>

source

fn output_frames_max(&self) -> usize

source

fn output_frames_next(&self) -> usize

source

fn output_delay(&self) -> usize

source

fn set_resample_ratio( &mut self, new_ratio: f64, ramp: bool ) -> ResampleResult<()>

source

fn set_resample_ratio_relative( &mut self, rel_ratio: f64, ramp: bool ) -> ResampleResult<()>

Implementors§

source§

impl<T, U> VecResampler<T> for U
where U: Resampler<T>, T: Sample,