Zita-Rev1
A FOSS4.17 reverberator that combines elements of Schroeder (§3.5) and FDN reverberators (§3.7) is zita-rev1,4.18written in C++ for Linux systems by Fons Adriaensen. A Faust version of the zita-rev1 stereo-mode functionality is zita_rev1 in Faust's effect.lib. A high-level block diagram appears in Fig.3.14.
The main high-level addition relative to an 8th-order FDN reverberator is the block labeled allpass_combs in Fig.3.14. This block inserts a Schroeder allpass comb filter (Fig.2.30) in series with each delay line. In zita-rev1 (as of this writing), the allpass-comb feedforward/feedback coefficients are all set to . The delay-line lengths and other details are readily found in the freely available source code (or by browsing the Faust-generated block diagram).
Zita-Rev1 Delay-Line Filters
In zita-rev1, the damping filter for each delay line consists of a low-shelf filter [449],4.19in series with a unique first-order lowpass filter that sets the high-frequency to be half that of the middle-band at a particular frequency (specified as ``HF Damping'' in the GUI). Since the filter is constrained to be a lowpass, for , i.e., the decay time gets shorter at higher frequencies.
Viewing the resulting damping filter as a three-band filter bank (§3.7.5), let and denote the desired band gains at dc and ``middle frequencies'', respectively.4.20 Then the low shelf may be set for a desired dc-gain of , and its input (or output) signal multiplied by to obtain the resulting filter
The lowpass filter is also first order, and to provide half the middle-band at the beginning of the ``high'' band, the lowpass should ``break'' to a gain of at the ``HF Damping'' frequency specified in the GUI. A unity-dc-gain one-pole lowpass has the form [449]
Next Section:
Further Extensions
Previous Section:
FDN Reverberators in Faust