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§
Sourcefn process(&mut self, input: &mut AudioBuffer<T>) -> AudioEffectState
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.
Sourcefn get_param(
&mut self,
name: &str,
) -> Result<EffectParamValue<'_>, AudioEffectState>
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.
Sourcefn set_param(
&mut self,
name: &str,
value: EffectParamValue<'_>,
) -> AudioEffectState
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.
Sourcefn reset(&mut self) -> AudioEffectState
fn reset(&mut self) -> AudioEffectState
Resets the effect to its initial state. Returns the state after reset.
Sourcefn set_sample_rate(&mut self, sample_rate: f32)
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.