A Language for Interactive Audio Applications

Interactive systems are difficult to program, but high-level languages can make the task much simpler. Interactive audio and music systems are a particularly interesting case because signal processing seems to favor a functional language approach while the handling of interactive parameter updates, sound events, and other real-time computation favors a more imperative or object-oriented approach. A new language, Serpent, and a new semantics for interactive audio have been implemented and tested. The result is an elegant way to express interactive audio algorithms and an efficient implementation.

[1]  Roger B. Dannenberg,et al.  Programming language design for music , 1997 .

[2]  Max V. Mathews,et al.  The Technology Of Computer Music , 1970 .

[3]  Dominique Fober,et al.  Real-time composition in Elody , 2000, ICMC.

[4]  Miller Puckette The M Orchestra Language , 1984, ICMC.

[5]  Eli Brandt,et al.  Implementing Temporal Type Constructors for Music Programming , 2001, ICMC.

[6]  Roger B. Dannenberg,et al.  SICIB: An Interactive Music Composition System Using Body Movements , 2001, Computer Music Journal.

[7]  Roger B. Dannenberg,et al.  Machine tongues XIX: Nyquist, a language for composition and sound synthesis , 1997 .

[8]  Roger B. Dannenberg,et al.  Toward Modular, Portable, Real-Time Software , 1995, ICMC.

[9]  Ali Momeni,et al.  Managing Complexity with Explicit Mapping of Gestures to Sound Control with OSC , 2001, ICMC.

[10]  David Zicarelli,et al.  An Extensible Real-time Signal Processing Environment for Max , 1998, ICMC.

[11]  Bill Schottstaedt Machine Tongues XVII: CLM: Music V Meets Common Lisp , 1994 .

[12]  Phil Burk JSyn - A Real-time Synthesis API for Java , 1998, ICMC.

[13]  James McCartney A New, Flexible Framework for Audio and Image Synthesis , 2000, ICMC.

[14]  Laboratorio Nacional de Música Electroacústica Proceedings of the 2001 International Computer Music Conference, ICMC 2001, Havana, Cuba, September 17-22, 2001 , 2001, ICMC.

[15]  Roger B. Dannenberg,et al.  Arctic: A functional language for real-time control , 1984, LFP '84.

[16]  Miller Puckette,et al.  The Architecture of the IRCAM Musical Workstation , 1991, USENIX Summer.

[17]  Eli Brandt,et al.  Temporal type constructors for computer music programming , 2000, ICMC.

[18]  Matthew Wright,et al.  Open SoundControl: A New Protocol for Communicating with Sound Synthesizers , 1997, ICMC.

[19]  Matthew Wright,et al.  Preparation for Interactive Live Computer Performance in Collaboration with a Symphony Orchestra , 2001, ICMC.

[20]  Roger B. Dannenberg,et al.  A Flexible Real-Time Software Synthesis System , 1996, ICMC.

[21]  Norbert Schnell,et al.  jMax: A New JAVA-based Editing and Control System for Real-time Musical Applications , 1998, ICMC.