The Harmonizer
®
Programmer’s Manual
©
1999-2008 Eventide, Inc.
Page 4 of 97
Release 1.3
GENERAL PRINCIPLES
OVERVIEW
This section will describe in general terms just what goes into constructing a program. Return to this
section if you ever feel like you’re being mired down in details later on.
First, the primary “stuff” of program construction is the “module." Modules are small, functional
“chunks." Some modules may have names that will be familiar to you, such as
delay
,
reverb
,
filter
,
pitchshifter
, and
eq
. As you would expect, a
delay
module delays the signal at its
input. A
reverb
module adds reverb to the signal at its input. A
filter
module filters the signal at
its input. And so on.
Before going any further, let’s say you wanted to construct a program that delayed and filtered a signal.
You would begin either in VSigfile or the Patch Editor area with a “blank slate” that contained nothing
but representations of the inputs and outputs of the DSP that would run the program. You would then
add a
delay
module and a
filter
module. Lastly, you would connect one of the DSP’s inputs to the
delay
module, the
delay
module’s
output
to the
filter
module, and the
filter
module’s
output
to one of the DSP’s outputs. The result, as seen in VSigfile, is shown above.
Most modules,
delay
and
filter
included, have “control inputs” that allow you to change
parameters associated with a given module. For example, a
delay
module has a control input that
allows you to change the delay time for the module (will it delay the signal 20ms or 1000ms?). A
filter
module has three control inputs: one for the cutoff frequency, one for the resonance at the
cutoff, and one to select the type of filtering done by the module (lowpass, highpass, notch, or band).
We normally construct programs so that parameters such as the ones described above can be altered in
the
PARAMETER
area of the Harmonizer
(like the factory presets you’ve probably already played with)
. Some
things called “
userobject
signals” are used in the construction of a program to create and organize menu
pages of parameters in the
PARAMETER
area.
The three paragraphs above capture the three
cornerstones
of program construction in the Harmonizer.
1.
We must connect appropriate modules to achieve a desired, overall audio effect.
2.
We must control the parameters of the modules in a program so that the desired audio effect is
achieved.
3.
We must make some of the parameters available in the
PARAMETER
area so that the user can
“tweak” the program to fit a particular situation.