Download - CCRMA - Stanford University
Download - CCRMA - Stanford University
Download - CCRMA - Stanford University
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
References<br />
• Music -421 (EE 367B) Course Description<br />
• J. 0 Smith. "Physical Modeling Synthesis Update". Computer Music Journal, vol. 20, no. 2.<br />
pp. 44-56. Summer. 1996. Available online at http://wwv-ccnua.staiiiord.edu/~jos/.<br />
• J. O. Smith. "Principles of Digital Waveguide Models of Musical Instruments.' in Applications of<br />
Digital Signal Processing to Audio and Acoustics. Mark Kafirs and Karlheinz Brandenburg,<br />
eds.. Kluwer Academic Publishers, pp. 417-466. 199S. See http: //www. wkap.nl/book .htm/0-7923-<br />
-8130-0.<br />
6.2.14 Signal Processing Algorithm Design Stressing Efficiency and Simplicity of Control<br />
Timothy Stilson<br />
This project deals with the design of digital filters, oscillators, and other structures that have parameters<br />
that can be varied efficiently and intuitively. The main criteria for the algorithms are:<br />
• Efficiency: The algorithms are intended to be as efficient as possible. This constraint is weighted<br />
very high in design decisions.<br />
• Non-Complexity of Controls: As a large part of efficiency, the amount of processing that must<br />
be done on an input control to make it useful for the algorithm should be minimized. As an example,<br />
some filter may have "center frequency" as a control input, but may actually go through a bunch<br />
of expensive calculations to turn it into some lower level coefficients that are actually used in the<br />
filter calculation. On the other hand, another filter may have design whereby center frequency goes<br />
directly into the filter with little change, and the filter uses it in a rather simple calculation (i.e. the<br />
ugly math hasn't simply been absorbed into the filter). This constraint often influences the choice<br />
of basic algorithms, but also influences the control paradigms. For example, some algorithms may<br />
turn out to be vastly more efficient if given some variation of frequency as an input, sav period,<br />
or log(frequency). In order to remain efficient, the control paradigm may also need to change (the<br />
whole system may use period rather than frequency, for example), otherwise there will need to be<br />
excessive parameter conversions, which violate the control complexity criterion.<br />
• Intuitiveness of Controls: As alluded to in the previous item, certain forms of controls can be<br />
more efficient than others. Unfortunately, some efficient parameters may be hard to use for an<br />
end-user. i.e. a musician will likely prefer to specify center frequency to a filter algorithm rather<br />
than filter coefficients. In order to make algorithms usable, one must either introduce parameter<br />
conversion procedures (inefficient) or look for an algorithm that has the desired inputs yet is more<br />
efficient.<br />
Often, one decides that a certain amount of inefficiency is livable, and in cases where a parameter<br />
changes only rarely, large amounts of inefficiency can be tolerated. But when a parameter must change<br />
very often, such as in a smooth sweep or a modulation, inefficiency is intolerable.<br />
In this project, the main application is the field referred to as "Virtual Analog Synthesis', which tries to<br />
implement analog synthesis algorithms (in particular, subtractive synthesis) in digital systems. Characteristics<br />
of many analog patches were the blurring of the distinction between control signals and audio<br />
signals, such as in modulation schemes, or the ability to dynamically (smoothly) control any parameter.<br />
Both of these abilities require parameters to change at very high rates, even as fast as the sampling rate.<br />
Thus the necessity for efficiently controllable algorithms.<br />
Two subprojects within this project are currently under being researched. First: the design and implementation<br />
of an efficient signal generator which generates bandlimited pulse trains, square waves.<br />
13