Module rabu::biquad

source ·
Expand description

This module contains a biquad filter that can be instantiated with provided coefficients. On top of that it contains some functions to create the coefficients for the basic filter types. Example of a low pass filter:

use rabu::biquad::{BiquadFilter, low_pass_coefficients};
use rabu::units::{Frequency, SampleRate};

let sample_rate = SampleRate::from(44100);
let cutoff = Frequency::from(1000.0);
let coefficients = low_pass_coefficients(sample_rate, cutoff);

let mut filter = BiquadFilter::new(coefficients);

let input_sample = 0.5;
let output_sample = filter.process(input_sample);

Structs

The coefficients for a BiquadFilter.
A biquad filter used to filter audio signals.

Functions

Creates the biquad coefficients for a band pass filter, given a sample rate and a cutoff frequency.
Creates the biquad coefficients for a high pass filter, given a sample rate and a cutoff frequency.
Creates the biquad coefficients for a low pass filter, given a sample rate and a cutoff frequency.