AudioEffectTrait

Trait AudioEffectTrait 

Source
pub trait AudioEffectTrait<T: FloatType> {
    // Required methods
    fn process(&mut self, input: &mut AudioBuffer<T>) -> AudioEffectState;
    fn get_param(
        &mut self,
        name: &str,
    ) -> Result<EffectParamValue<'_>, AudioEffectState>;
    fn set_param(
        &mut self,
        name: &str,
        value: EffectParamValue<'_>,
    ) -> AudioEffectState;
    fn reset(&mut self) -> AudioEffectState;
    fn set_sample_rate(&mut self, sample_rate: f32);
}
Expand description

Trait for implementing audio effects. NOTE: Parameter names are validated against ParamPropDesk, so no additional name checks are needed.

Required Methods§

Source

fn process(&mut self, input: &mut AudioBuffer<T>) -> AudioEffectState

Main processing function for the effect. Applies the effect to the input audio buffer. Returns the state after processing.

Source

fn get_param( &mut self, name: &str, ) -> Result<EffectParamValue<'_>, AudioEffectState>

Retrieves the value of a parameter by name. Returns the parameter value or an error state if not found.

Source

fn set_param( &mut self, name: &str, value: EffectParamValue<'_>, ) -> AudioEffectState

Sets the value of a parameter by name. Returns the state after setting the parameter.

Source

fn reset(&mut self) -> AudioEffectState

Resets the effect to its initial state. Returns the state after reset.

Source

fn set_sample_rate(&mut self, sample_rate: f32)

Sets the sample rate for the effect. This may be used to adjust internal calculations based on sample rate.

Implementors§