@thi.ng/dsp
Version:
Composable signal generators, oscillators, filters, FFT, spectrum, windowing & related DSP utils
37 lines • 1.32 kB
TypeScript
import type { IReset } from "@thi.ng/api";
import type { SVFType } from "./api.js";
import { AProc } from "./aproc.js";
export declare const svfLP: (fc: number, q?: number) => SVF;
export declare const svfHP: (fc: number, q?: number) => SVF;
export declare const svfBP: (fc: number, q?: number) => SVF;
export declare const svfNotch: (fc: number, q?: number) => SVF;
export declare const svfPeak: (fc: number, q?: number) => SVF;
export declare const svfAllpass: (fc: number, q?: number) => SVF;
/**
* Multi-type state variable filter w/ trapezoidal integration, after
* Andrew Simper.
*
* References:
*
* - https://cytomic.com/files/dsp/SvfLinearTrapOptimised2.pdf
* - https://en.wikipedia.org/wiki/Trapezoidal_rule
*/
export declare class SVF extends AProc<number, number> implements IReset {
protected _type: SVFType;
protected _freq: number;
protected _q: number;
protected _a1: number;
protected _a2: number;
protected _c1: number;
protected _c2: number;
protected _g: number;
protected _k: number;
constructor(_type: SVFType, _freq: number, _q?: number);
reset(): this;
next(x: number): number;
set(fc: number, q: number): void;
setFreq(fc: number): void;
setQ(q: number): void;
protected computeCoeffs(): void;
}
//# sourceMappingURL=svf.d.ts.map