Skip to content

daisysp::Svf

More...

#include <svf.h>

Public Functions

Name
Svf()
~Svf()
void Init(float sample_rate)
void Process(float in)
void SetFreq(float f)
void SetRes(float r)
void SetDrive(float d)
float Low()
float High()
float Band()
float Notch()
float Peak()

Detailed Description

class daisysp::Svf;

Double Sampled, Stable State Variable Filter

Credit to Andrew Simper from musicdsp.org

This is his "State Variable Filter (Double Sampled, Stable)"

Additional thanks to Laurent de Soras for stability limit, and Stefan Diedrichsen for the correct notch output

Ported by: Stephen Hensley

Public Functions Documentation

function Svf

inline Svf()

function ~Svf

inline ~Svf()

function Init

void Init(
    float sample_rate
)

Initializes the filter float sample_rate - sample rate of the audio engine being run, and the frequency that the Process function will be called.


function Process

void Process(
    float in
)

Process the input signal, updating all of the outputs.


function SetFreq

void SetFreq(
    float f
)

sets the frequency of the cutoff frequency. f must be between 0.0 and sample_rate / 3


function SetRes

void SetRes(
    float r
)

sets the resonance of the filter. Must be between 0.0 and 1.0 to ensure stability.


function SetDrive

void SetDrive(
    float d
)

sets the drive of the filter affects the response of the resonance of the filter


function Low

inline float Low()

Return: low pass output of the filter

lowpass output


function High

inline float High()

Return: high pass output of the filter

highpass output


function Band

inline float Band()

Return: band pass output of the filter

bandpass output


function Notch

inline float Notch()

Return: notch pass output of the filter

notchpass output


function Peak

inline float Peak()

Return: peak output of the filter

peak output

---

Updated on 2024-01-03 at 19:38:46 +0000