-
Notifications
You must be signed in to change notification settings - Fork 56
Description
The description for ReverbMS states: "The network consists of a group of
/// parallel comb filters followed by a series of allpass comb filters.
/// The comb filters produce initial echoes and the allpass combs diffuse the
/// echoes by smearing transients and further increasing echo density."
However, in the implementation (ReverbMS::operator()), it looks like the allpass filters are applied before the comb filters.
Am I reading that correctly?
For the JOS implementation diagrams, Freeverb (https://ccrma.stanford.edu/~jos/pasp/Freeverb.html) and SATREV (https://ccrma.stanford.edu/~jos/pasp/Example_Schroeder_Reverberators.html) are shown with allpass filtering after the comb filters. Only the two JCVERB examples follow the Gamma method of allpass before combs.
It might be worth adding a boolean switch to decide which stage happens first. That way, more Schroeder types can be implemented.