1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#pragma once #include <juce_audio_processors/juce_audio_processors.h> class AllPassFilter { public: void prepare(double sampleRate, int samplesPerBlock, int delayInSamples, float gain); void reset(); void process(float& sample); private: std::vector<float> delayBuffer; int delayBufferWritePos = 0; int delayInSamples = 0; float gain = 0.7f; };