Trait Resampler

Source
pub trait Resampler: Sized {
    // Required methods
    fn new(
        channels: usize,
        in_rate: usize,
        out_rate: usize,
        quality: usize,
    ) -> Result<Self, Error>;
    fn set_rate(&mut self, in_rate: usize, out_rate: usize) -> Result<(), Error>;
    fn get_rate(&self) -> (usize, usize);
    fn get_ratio(&self) -> (usize, usize);
    fn process_float(
        &mut self,
        index: usize,
        input: &[f32],
        output: &mut [f32],
    ) -> Result<(usize, usize), Error>;
    fn skip_zeros(&mut self);
    fn reset(&mut self);
    fn get_input_latency(&self) -> usize;
    fn get_output_latency(&self) -> usize;
    fn set_quality(&mut self, quality: usize) -> Result<(), Error>;
    fn get_quality(&self) -> usize;
}

Required Methods§

Source

fn new( channels: usize, in_rate: usize, out_rate: usize, quality: usize, ) -> Result<Self, Error>

Source

fn set_rate(&mut self, in_rate: usize, out_rate: usize) -> Result<(), Error>

Source

fn get_rate(&self) -> (usize, usize)

Source

fn get_ratio(&self) -> (usize, usize)

Source

fn process_float( &mut self, index: usize, input: &[f32], output: &mut [f32], ) -> Result<(usize, usize), Error>

Source

fn skip_zeros(&mut self)

Source

fn reset(&mut self)

Source

fn get_input_latency(&self) -> usize

Source

fn get_output_latency(&self) -> usize

Source

fn set_quality(&mut self, quality: usize) -> Result<(), Error>

Source

fn get_quality(&self) -> usize

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.

Implementors§