miller-book/node124.html

182 lines
5.9 KiB
HTML

<!DOCTYPE html>
<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<TITLE>Reverberator</TITLE>
<META NAME="description" CONTENT="Reverberator">
<META NAME="keywords" CONTENT="book">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="book.css">
<LINK REL="next" HREF="node125.html">
<LINK REL="previous" HREF="node123.html">
<LINK REL="up" HREF="node116.html">
<LINK REL="next" HREF="node125.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html2403"
HREF="node125.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="next.png"></A>
<A NAME="tex2html2397"
HREF="node116.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="up.png"></A>
<A NAME="tex2html2391"
HREF="node123.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="prev.png"></A>
<A NAME="tex2html2399"
HREF="node4.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="contents.png"></A>
<A NAME="tex2html2401"
HREF="node201.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html2404"
HREF="node125.html">Pitch shifter</A>
<B> Up:</B> <A NAME="tex2html2398"
HREF="node116.html">Examples</A>
<B> Previous:</B> <A NAME="tex2html2392"
HREF="node123.html">Time-varying complex comb filter:</A>
&nbsp; <B> <A NAME="tex2html2400"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html2402"
HREF="node201.html">Index</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION0011108000000000000000">
Reverberator</A>
</H2>
<P>
Example G08.reverb.pd (Figure <A HREF="#fig07.31">7.31</A>) shows a simple artificial reverberator,
essentially a realization of the design shown in Figure <A HREF="node111.html#fig07.15">7.15</A>. Four
delay lines are fed by the input and by their own recirculated output. The
delay outputs are intermixed using rotation matrices, built up from elementary
rotations of <IMG
WIDTH="29" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img52.png"
ALT="$\pi /4$"> as in Figure <A HREF="node110.html#fig07.13">7.13</A> (part a).
<P>
<DIV ALIGN="CENTER"><A NAME="fig07.31"></A><A NAME="8301"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 7.31:</STRONG>
An artificial reverberator.</CAPTION>
<TR><TD><IMG
WIDTH="585" HEIGHT="811" BORDER="0"
SRC="img846.png"
ALT="\begin{figure}\psfig{file=figs/fig07.31.ps}\end{figure}"></TD></TR>
</TABLE>
</DIV>
<P>
The normalizing
multiplication (by <IMG
WIDTH="43" HEIGHT="38" ALIGN="MIDDLE" BORDER="0"
SRC="img847.png"
ALT="$\sqrt{1/2}$"> at each stage) is absorbed into the feedback
gain, which therefore cannot exceed <IMG
WIDTH="27" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img98.png"
ALT="$1/2$">.
At a feedback gain of exactly <IMG
WIDTH="27" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img98.png"
ALT="$1/2$">, all the energy leaving the delay lines is
reinserted into them, so the reverberation lasts perpetually.
<P>
<DIV ALIGN="CENTER"><A NAME="fig07.32"></A><A NAME="8307"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 7.32:</STRONG>
The echo generator used in the reverberator.</CAPTION>
<TR><TD><IMG
WIDTH="230" HEIGHT="164" BORDER="0"
SRC="img848.png"
ALT="\begin{figure}\psfig{file=figs/fig07.32.ps}\end{figure}"></TD></TR>
</TABLE>
</DIV>
<P>
Figure <A HREF="#fig07.32">7.32</A> shows the interior of the <TT>reverb-echo</TT> abstraction
used in the reverberator. The two inputs are mixed (using the same rotation matrix
and again leaving the renormalization for later). One channel is then
delayed. The delay times are selected to grow roughly exponentially; this
ensures a smooth and spread-out pattern of echos.
<P>
Many extensions of this idea are possible of which we'll only name a few. It
is natural, first, to put low-pass filters at the end of the delay lines, to
mimic the typically faster decay of high frequencies than low ones. It is also
common to use more than four recirculating delays; one reverberator in the Pd
distribution uses sixteen. Finally, it is common to allow separate control of
the amplitudes of the early echos (heard directly) and that of the
recirculating signal; parameters such as these are thought to control
sonic qualities described as "presence", "warmth", "clarity", and so on.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html2403"
HREF="node125.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="next.png"></A>
<A NAME="tex2html2397"
HREF="node116.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="up.png"></A>
<A NAME="tex2html2391"
HREF="node123.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="prev.png"></A>
<A NAME="tex2html2399"
HREF="node4.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="contents.png"></A>
<A NAME="tex2html2401"
HREF="node201.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html2404"
HREF="node125.html">Pitch shifter</A>
<B> Up:</B> <A NAME="tex2html2398"
HREF="node116.html">Examples</A>
<B> Previous:</B> <A NAME="tex2html2392"
HREF="node123.html">Time-varying complex comb filter:</A>
&nbsp; <B> <A NAME="tex2html2400"
HREF="node4.html">Contents</A></B>
&nbsp; <B> <A NAME="tex2html2402"
HREF="node201.html">Index</A></B>
<!--End of Navigation Panel-->
<ADDRESS>
Miller Puckette
2006-12-30
</ADDRESS>
</BODY>
</HTML>