aboutsummaryrefslogtreecommitdiff
path: root/src/DSP/SchroederReverb.h
blob: 2d5cd0b13655a57054794fb08cf25160a4dfb426 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once

#include "AllPassFilter.h"
#include "CombFilter.h"
#include <juce_audio_processors/juce_audio_processors.h>

class SchroederReverb
{
  public:
    void prepare(double sampleRate, int samplesPerBlock);
    void reset();
    void process(float& sample, float dryWetMix, float decayFactor);

  private:
    CombFilter combFilter0, combFilter1, combFilter2, combFilter3;
    AllPassFilter allPassFilter0, allPassFilter1;
};