2022-04-12 22:02:59 -03:00
<!DOCTYPE html>
2022-04-12 21:54:18 -03:00
<!-- 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 >
2022-04-12 22:02:59 -03:00
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2022-04-12 21:54:18 -03:00
< TITLE > Prefabricated time-varying band-pass filter< / TITLE >
< META NAME = "description" CONTENT = "Prefabricated time-varying band-pass filter" >
< 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 = "node158.html" >
< LINK REL = "previous" HREF = "node156.html" >
< LINK REL = "up" HREF = "node155.html" >
< LINK REL = "next" HREF = "node158.html" >
< / HEAD >
< BODY >
<!-- Navigation Panel -->
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2917"
2022-04-12 21:54:18 -03:00
HREF="node158.html">
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next"
2022-04-12 22:02:59 -03:00
SRC="next.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2911"
2022-04-12 21:54:18 -03:00
HREF="node155.html">
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up"
2022-04-12 22:02:59 -03:00
SRC="up.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2905"
2022-04-12 21:54:18 -03:00
HREF="node156.html">
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous"
2022-04-12 22:02:59 -03:00
SRC="prev.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2913"
2022-04-12 21:54:18 -03:00
HREF="node4.html">
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents"
2022-04-12 22:02:59 -03:00
SRC="contents.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2915"
2022-04-12 21:54:18 -03:00
HREF="node201.html">
< IMG WIDTH = "43" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "index"
2022-04-12 22:02:59 -03:00
SRC="index.png">< / A >
2022-04-12 21:54:18 -03:00
< BR >
2022-04-12 23:32:40 -03:00
< B > Next:< / B > < A ID = "tex2html2918"
2022-04-12 21:54:18 -03:00
HREF="node158.html">Envelope followers< / A >
2022-04-12 23:32:40 -03:00
< B > Up:< / B > < A ID = "tex2html2912"
2022-04-12 21:54:18 -03:00
HREF="node155.html">Examples< / A >
2022-04-12 23:32:40 -03:00
< B > Previous:< / B > < A ID = "tex2html2906"
2022-04-12 21:54:18 -03:00
HREF="node156.html">Prefabricated low-, high-, and< / A >
2022-04-12 23:32:40 -03:00
< B > < A ID = "tex2html2914"
2022-04-12 21:54:18 -03:00
HREF="node4.html">Contents< / A > < / B >
2022-04-12 23:32:40 -03:00
< B > < A ID = "tex2html2916"
2022-04-12 21:54:18 -03:00
HREF="node201.html">Index< / A > < / B >
< BR >
< BR >
<!-- End of Navigation Panel -->
2022-04-12 23:32:40 -03:00
< H2 > < A ID = "SECTION001252000000000000000" >
2022-04-12 21:54:18 -03:00
Prefabricated time-varying band-pass filter< / A >
< / H2 >
< P >
Time-varying band-pass filtering, as often used in classical
subtractive synthesis (Section < A HREF = "node152.html#sect08.subtractive" > 8.4.1< / A > ), can be done
using the < TT > vcf~< / TT > object, introduced here:
< P >
< BR > <!-- MATH
$\fbox{ \texttt{vcf\~}}$
-->
< IMG
WIDTH="53" HEIGHT="39" ALIGN="MIDDLE" BORDER="0"
SRC="img1022.png"
ALT="\fbox{ \texttt{vcf\~}}">:
2022-04-12 23:32:40 -03:00
< A ID = "10846" > < / A > a "voltage controlled" band-pass filter,
2022-04-12 21:54:18 -03:00
similar to < TT > bp~< / TT > , but with a signal inlet to control center frequency.
Both < TT > bp~< / TT > and < TT > vcf~< / TT > are one-pole resonant filters as
developed in Section < A HREF = "node143.html#sect8.twopolebandpass" > 8.3.4< / A > ; < TT > bp~< / TT > outputs only
the real part of the resulting signal, while < TT > vcf~< / TT > outputs the
real and imaginary parts separately.
< P >
2022-04-12 23:32:40 -03:00
< DIV ALIGN = "CENTER" > < A ID = "fig08.29" > < / A > < A ID = "10612" > < / A >
2022-04-12 21:54:18 -03:00
< TABLE >
< CAPTION ALIGN = "BOTTOM" > < STRONG > Figure 8.29:< / STRONG >
The < TT > vcf~< / TT > band-pass filter, with its center frequency
controlled by an audio signal (as compared to
< TT > bp~< / TT > which takes only control messages to set its center frequency. < / CAPTION >
< TR > < TD > < IMG
WIDTH="303" HEIGHT="355" BORDER="0"
SRC="img1024.png"
ALT="\begin{figure}\psfig{file=figs/fig08.29.ps}\end{figure}">< / TD > < / TR >
< / TABLE >
< / DIV >
< P >
Example H04.filter.sweep.pd (Figure < A HREF = "#fig08.29" > 8.29< / A > ) demonstrates using the < TT > vcf~< / TT > object for a simple and characteristic subtractive synthesis task. A
< TT > phasor~< / TT > object (at top) creates a sawtooth wave to filter. (This is
not especially good practice as we are not controlling the possibility of
foldover; a better sawtooth generator for this purpose will be developed in
2022-04-12 23:17:03 -03:00
Chapter 10.) The second < TT > phasor~< / TT > object (labeled "LFO for sweep")
2022-04-12 21:54:18 -03:00
controls the time-varying center frequency. After adjusting to set the depth
and a base center frequency (given in MIDI units), the result is converted into
Hertz (using the < TT > tabread4~< / TT > object) and passed to < TT > vcf~< / TT > to set
its center frequency. Another example of using a < TT > vcf~< / TT > object for
subtractive synthesis is demonstrated in example H05.filter.floyd.pd.
< P >
< HR >
<!-- Navigation Panel -->
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2917"
2022-04-12 21:54:18 -03:00
HREF="node158.html">
< IMG WIDTH = "37" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "next"
2022-04-12 22:02:59 -03:00
SRC="next.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2911"
2022-04-12 21:54:18 -03:00
HREF="node155.html">
< IMG WIDTH = "26" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "up"
2022-04-12 22:02:59 -03:00
SRC="up.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2905"
2022-04-12 21:54:18 -03:00
HREF="node156.html">
< IMG WIDTH = "63" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "previous"
2022-04-12 22:02:59 -03:00
SRC="prev.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2913"
2022-04-12 21:54:18 -03:00
HREF="node4.html">
< IMG WIDTH = "65" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "contents"
2022-04-12 22:02:59 -03:00
SRC="contents.png">< / A >
2022-04-12 23:32:40 -03:00
< A ID = "tex2html2915"
2022-04-12 21:54:18 -03:00
HREF="node201.html">
< IMG WIDTH = "43" HEIGHT = "24" ALIGN = "BOTTOM" BORDER = "0" ALT = "index"
2022-04-12 22:02:59 -03:00
SRC="index.png">< / A >
2022-04-12 21:54:18 -03:00
< BR >
2022-04-12 23:32:40 -03:00
< B > Next:< / B > < A ID = "tex2html2918"
2022-04-12 21:54:18 -03:00
HREF="node158.html">Envelope followers< / A >
2022-04-12 23:32:40 -03:00
< B > Up:< / B > < A ID = "tex2html2912"
2022-04-12 21:54:18 -03:00
HREF="node155.html">Examples< / A >
2022-04-12 23:32:40 -03:00
< B > Previous:< / B > < A ID = "tex2html2906"
2022-04-12 21:54:18 -03:00
HREF="node156.html">Prefabricated low-, high-, and< / A >
2022-04-12 23:32:40 -03:00
< B > < A ID = "tex2html2914"
2022-04-12 21:54:18 -03:00
HREF="node4.html">Contents< / A > < / B >
2022-04-12 23:32:40 -03:00
< B > < A ID = "tex2html2916"
2022-04-12 21:54:18 -03:00
HREF="node201.html">Index< / A > < / B >
<!-- End of Navigation Panel -->
< ADDRESS >
Miller Puckette
2006-12-30
< / ADDRESS >
< / BODY >
< / HTML >