blob: 5f1b7b198fb63dd72f4b2e522d556fc634da254b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#pragma once
#include "AllPassFilter.h"
#include "CombFilter.h"
#include "Delay.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);
void setPreDelayMs(float ms);
private:
CombFilter combFilter0, combFilter1, combFilter2, combFilter3;
AllPassFilter allPassFilter0, allPassFilter1;
Delay preDelay;
};
|