Todd Winkler is an award-winning composer whose works for interactive technology and mixed media have been performed
at major international festivals. He is Assistant Professor of Music at Brown University, where he is Director
of the MacColl Studios for Electronic Music.
Review
"Beyond a clear and thorough introduction to Max programming, Todd Winkler's Composing Interactive Music
presents and explains a comprehensive theoretical framework encompassing the major issues in the field."
--Robert Rowe, Music Technology Program, New York University
MIT Press Web Site, March, 2001
Summary
Interactive music refers to a composition or improvisation in which software interprets live performances to
produce music generated or modified by computers. In Composing Interactive Music, Todd Winkler presents both the
technical and aesthetic possibilities of this increasingly popular area of computer music. His own numerous compositions
have been the laboratory for the research and development that resulted in this book.
The author's examples use a graphical programming language called Max. Each example in the text is accompanied
by a picture of how it appears on the computer screen. The same examples are included as software on the accompanying
CD-ROM, playable on a Macintosh computer with a MIDI keyboard.
Although the book is aimed at those interested in writing music and software using Max, the casual reader can learn
the basic concepts of interactive composition by just reading the text, without running any software. The book
concludes with a discussion of recent multimedia work incorporating projected images and video playback with sound
for concert performances and art installations.
Table of Contents
Preface
I INTRODUCTION, HISTORY, & THEORY
1 Introduction and Background
Components of an Interactive System
Enhancing the Roles of Performer and Composer
Audience Reception and Participation
A Brief History of Interactive Composition
2 Interaction: Defining Relationships Between Computers and Performers
Performance Models
Musical Form and Structure
Instrument Design and Limitations
II PROGRAMMING FOUNDATION
3 Graphic Programming with Max
Brief Overview of Programming Languages
Introduction to Max
How Max Handles MIDI
Chapter Summary
4 Program Structure and Design
Approaches to Programming
Handling Data in Max
Data Storage Objects: Storing and Recalling Information
Other Max Data Storage Objects
Messages: Data Types and Display
Data Flow: Moving Information Through the System
C Programming Objects
Efficiency and Memory Management
Debugging
5 Interface Design
Basic Principles of Interface Design
Building Interfaces in Max
Max's Interface Objects
User Feedback
Computer Input Devices
Interface and Encapsulation: A Programming Example
III CORE COMPONENTS
6 The Computer as Listener: Analyzing and Storing Performance Data
Listening to Music
Analysis: What Can Be Understood?
Time
Improving Listerer Data
Space
Identifying Musical Features and Tracking Changes Over Time
Efficient Use of Listener Objects
7 Composer Objects
Creative Responses to Listener Data
Composer Object Design
Types of Composition Algorithms
Transforming Musical Material
Constrained Pitch Output: Comparative Programming Examples
MelodicContour: A Progressive Study in Generatve Methods
ParamColl: Parameter Analysis and Playback
Sequencer Methods
Humanizing Algorithms: The Computer as Performer
IV ADVANCED TECHNIQUES AND CONCEPTS
8 Sound Design
MIDI Limitations for Listener Objects
Participation By Musicians Playing Nondigital Instruments
Composer Objects for Timbre Selection, Creation, and Manipulation
Synthesis Design and Control Parameters
System-Exclusive Messages
Automated Mixing and Multitrack Parameter Control
Interactive Signal Processing
Basic Categories of Signal Processing
Compositional Approaches Using Interactive Signal Processing
Scaling Problems and Solutions
The Future of Max: Audio Input, Signal Processing, and Sound Synthesis
9 Score Objects: Compositional Strategies, Structures, and Timing Mechanisms
Interactive Music in Screen-Based Works
Interactive Music in Multimedia Performance Works
Displaying Graphics in Max
New Controllers and Multimedia Performance Systems
Making Music Through Movement
Appendix: Master List of Examples
References
Index