04.07.2013 Views

Download - CCRMA - Stanford University

Download - CCRMA - Stanford University

Download - CCRMA - Stanford University

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!