Delay-Line Damping Filter Design
Let
denote the desired reverberation time at radian frequency
, and let
denote the transfer function of the lowpass
filter to be placed in series with the
th delay line which is
samples long. The problem we consider now is how to design these
filters to yield the desired reverberation time. We will specify an
ideal amplitude response for
based on the desired
reverberation time at each frequency, and then use conventional
filter-design methods to obtain a low-order approximation to this
ideal specification.
In accordance with Eq.(3.6), the lowpass filter
in series
with a length
delay line should approximate
![$\displaystyle H_i(z) = G^{M_i}(z)
$](http://www.dsprelated.com/josimages_new/pasp/img858.png)
![$\displaystyle \left\vert H_i(e^{j\omega T})\right\vert^{\frac{t_{60}(\omega)}{M_iT}} = 0.001.
$](http://www.dsprelated.com/josimages_new/pasp/img859.png)
![$ 20\log_{10}$](http://www.dsprelated.com/josimages_new/pasp/img860.png)
This is the same formula derived by Jot [217] using a somewhat different approach.
Now that we have specified the ideal delay-line filter
in
terms of its amplitude response in dB, any number of filter-design
methods can be used to find a low-order
which provides a good
approximation to satisfying Eq.
(3.9). Examples include the functions
invfreqz and stmcb in Matlab. Since the variation
in reverberation time is typically very smooth with respect to
, the filters
can be very low order.
First-Order Delay-Filter Design
The first-order case is very simple while enabling separate control of
low-frequency and high-frequency reverberation times. For simplicity,
let's specify and
, denoting the desired
decay-time at dc (
) and half the sampling rate
(
). Then we have determined the coefficients of a
one-pole filter:
![$\displaystyle H_i(z) = \frac{g_i}{1-p_iz^{-1}}
$](http://www.dsprelated.com/josimages_new/pasp/img867.png)
![$ H_i(1)=g_i/(1-p_i)$](http://www.dsprelated.com/josimages_new/pasp/img868.png)
![$ \omega=\pi/T$](http://www.dsprelated.com/josimages_new/pasp/img866.png)
![$ H_i(-1)=g_i/(1+p_i)$](http://www.dsprelated.com/josimages_new/pasp/img869.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
![\begin{eqnarray*}
\frac{g_i}{1-p_i} &=& 10^{-3 M_i T / t_{60}(0)}
\eqsp e^{-M_iT...
...(\pi/T)}
\eqsp e^{-M_iT/\tau(\pi/T)} \isdefs R_\pi^{M_i}\\ [5pt]
\end{eqnarray*}](http://www.dsprelated.com/josimages_new/pasp/img870.png)
where
denotes the
th delay-line length in
seconds. These two equations are readily solved to yield
![\begin{eqnarray*}
p_i &=& \frac{R_0^{M_i}-R_\pi^{M_i}}{R_0^{M_i}+R_\pi^{M_i}}\\ [5pt]
g_i &=& \frac{2R_0^{M_i}R_\pi^{M_i}}{R_0^{M_i}+R_\pi^{M_i}}
\end{eqnarray*}](http://www.dsprelated.com/josimages_new/pasp/img872.png)
The truncated series approximation
![$\displaystyle R_\omega^{M_i} \isdefs e^{-\frac{M_iT}{\tau(\omega)}}
\approxs 1 ...
...\frac{6.91\,M_iT}{t_{60}(\omega)}
\isdefs 1 - \frac{6.91\,M_i}{n_{60}(\omega)}
$](http://www.dsprelated.com/josimages_new/pasp/img873.png)
Orthogonalized First-Order Delay-Filter Design
In [217], first-order delay-line filters of the form
![$\displaystyle H_i(z) \eqsp g'_i \frac{1-p_i}{1-p_iz^{-1}}
$](http://www.dsprelated.com/josimages_new/pasp/img874.png)
![$ g_i=g'_i\cdot(1-p_i)$](http://www.dsprelated.com/josimages_new/pasp/img875.png)
![$ H_i(1)=g'_i$](http://www.dsprelated.com/josimages_new/pasp/img876.png)
![$ p_i$](http://www.dsprelated.com/josimages_new/pasp/img301.png)
![$ g'_i$](http://www.dsprelated.com/josimages_new/pasp/img877.png)
![$ p_i$](http://www.dsprelated.com/josimages_new/pasp/img301.png)
![$ \,$](http://www.dsprelated.com/josimages_new/pasp/img196.png)
![$\displaystyle g'_i \eqsp 10^{-3 M_i T / t_{60}(0)}.
$](http://www.dsprelated.com/josimages_new/pasp/img878.png)
![$\displaystyle p_i \eqsp \frac{\mbox{ln}(10)}{4}\log_{10}(g_i)\left(1-\frac{1}{\alpha^2}\right)
$](http://www.dsprelated.com/josimages_new/pasp/img879.png)
denotes the ratio of reverberation time at half the sampling rate divided by the reverberation time at dc.4.16
Multiband Delay-Filter Design
In §3.7.5, we derived first-order FDN delay-line filters which
can independently set the reverberation time at dc and at half the
sampling rate. However, perceptual studies indicate that
reverberation time should be independently adjustable in at least
three frequency bands [217]. To provide this degree
of control (and more), one can implement a multiband delay-line filter
using a general-purpose filter bank
[370,500]. The output, say, of each delay
line is split into bands, where
is recommended, and then,
from Eq.
(3.6), the gain in the
th band for a length
delay-line can be set to
![$\displaystyle G^{M_i}(e^{j\omega_kT})\eqsp 10^{-\frac{3M_i}{n_{60}(\omega_k)}} ...
...ln}(10)\,M_i}{n_{60}(\omega_k)} \approxs
1-\frac{6.91\,M_i}{n_{60}(\omega_k)}
$](http://www.dsprelated.com/josimages_new/pasp/img882.png)
![$ n_{60}(\omega)=t_{60}(\omega)/T$](http://www.dsprelated.com/josimages_new/pasp/img883.png)
Next Section:
Spectral Coloration Equalizer
Previous Section:
Achieving Desired Reverberation Times