/// import { Transform, TransformCallback } from "stream"; import { Hz } from "../global"; /** * A band pass filter using simple moving average low pass filters. * https://www.gaussianwaves.com/2010/11/moving-average-filter-ma-filter-2/ * (To support old waveforms, not a very good audio filter.) * */ declare class MovingAverageBandPassFilter extends Transform { /** Lower frequency cut-off */ private lo; /** Higher frequency cut-off */ private hi; /** Length of first (high pass) moving average */ private loAvLen; /** Length of second (low-pass) moving average */ private hiAvLen; private sampleRate; private loSum; private hiSum; private loBuffer; private hiBuffer; constructor(lo: Hz, hi: Hz); /** Calculate moving average lengths based on sample rate of incoming PCM audio. */ private setup; /** Apply filter to incoming audio chunk. */ _transform(audio: AudioBuffer, encoding: string, callback: TransformCallback): void; } export { MovingAverageBandPassFilter };