Real-time Frequency-Domain Digital Signal Processing on the Desktop
Zack Settel & Cort Lippe
McGill University, Music Faculty University at Buffalo, Department of Music
555 rue Sherbrooke Ouest Hiller Computer Music Studios
Montreal, Quebec H3A 1E3 222 Baird Hall
CANADA Buffalo, NY, USA 14260
zack@music.mcgill.ca lippe@acsu.buffalo.edu
Abstract
For some years, real-time general-purpose digital audio systems, based around specialized hardware, have been
used by composers and researchers in the field of electronic music, and by professionals in various audiorelated fields. During the past decade, these systems have gradually replaced many of the audio-processing
devices used in amateur and professional configurations. Today, with the significant increase in computing
power available on the desktop, the audio community is witnessing an important shift away from these
systems, which required specialized hardware, towards general purpose desktop computing systems featuring
high-level digital signal processing (DSP) software programming environments.
Introduction
An new real-time DSP programming environment called Max Signal Processing (MSP) [Zicarelli, 1997], was
released this past year for the Apple Macintosh PowerPC platform. This software offers a suite of signal
processing objects as an extension to the widely used MAX software environment, and provides new
opportunities for musicians and engineers wishing to explore professional-quality real-time DSP. Most
important, MSP provides a number of frequency-domain processing primitives that allow for the development
of sophisticated frequency-domain signal processing applications.
Working in MSP, the authors have developed a library of frequency-domain DSP applications for crosssynthesis, analysis/resynthesis, denoising, pitch suppression, dynamics processing, advanced filtering,
spectrum-based spatialization, and phase vocoding. Much of this library was originally developed by the
authors on the IRCAM Signal Processing Workstation (ISPW) [Lindemann, 1991], and has been discussed in
previous papers [Settel & Lippe, 1994]. MSP is a direct descendant of ISPW Max [Puckette, 1991], but
provides greater portability and increased functionality. The authors have made improvements to the library,
while developments in new directions have been made possible by features of MSP which ameliorate
exploration in the frequency domain. Techniques and applications will be presented and discussed in terms of
both general algorithm and MSP implementation, providing a concrete point of departure for further
exploration using the MSP environment.
0