Winter 2023

MUSI 453 – Computer Applications in Music

Course Description

Use of computers in music composition, performance, education and interdisciplinary media.

An introduction to concepts and techniques of computer music with an emphasis on interactive applications and programming. Through the completion of a series of applied creative projects, students will acquire a basic understanding of various creative and technical approaches to the use of computers in sound and music.

Learning Outcomes

By the completion of this course, successful students will be able to:

  • demonstrate knowledge of practical concepts and techniques for sound programming and design
  • demonstrate interactive design between external controllers and the Max environment
  • understand the technical and theoretical foundations of digital audio
  • employ a variety of hardware and software technologies to create and perform music and sound works

Course Schedule

Week 1

  • Historical overview of computer music
  • An introduction to Max window and toolbars
  • An introduction to Max terminology: message, object, bang, control/audio rate, arguments, attributes, edit/play/presentation modes
  • Data types and some basic objects in Max

Week 2

  • What is sound, how does sound work: time, frequency, amplitude, phase, timbre
  • Evaluation order
  • Hot/cold inlets
  • Some practical uses of modulus
  • Introduction to MIDI
  • Making a simple sampler using computer keyboard and [playlist~]

Week 3

  • First monophonic instrument using a [cycle~]
  • Controlling the oscillator with a MIDI keyboard
  • Shaping oscillator output using an amplitude envelope
  • Scaling amplitude using MIDI note velocity
  • Filtering out note out messages
  • Using modulation wheel to adjust note duration

Week 4

  • Fundamentals of digital audio
  • List manipulation
  • [pack] / [unpack]
  • Additive synthesis
  • Amplitude Modulation (AM) synthesis
  • Introduction to Frequency Modulation (FM) synthesis

Week 5

  • FM synthesis terminology
  • What each control does in FM
  • First monophonic FM synthesizer in Max
  • Saving presets

Week 6

  • Reading from or saving to disk
  • [sfplay~]
  • [sflist~] and cues
  • [sfrecord~]
  • Playing with playback speed, pitch shift, and time-stretching

Week 7

  • No classes – reading week

Week 8

  • Working with memory-based techniques
  • Reading, recording, manipulating audio buffers
  • [buffer~]
  • [waveform~]
  • [groove~]
  • Playing with playback speed, pitch shift, and time-stretching
  • Step sequencing
  • Calculating BPM from time or vice versa
  • Objects and abstractions pertaining to sequencing: [transratio], [transport], [tempo]

Week 9

  • Implementing some signal processing techniques
  • Tremolo
  • Wobble
  • Chorus
  • Phasor
  • Delay with feedback
  • Filters

Week 10

  • Strategies for controlling signal flow
  • Boolean logic
  • Comparison and control objects
  • [gate]
  • [gswitch]
  • [gswitch2]
  • [split]
  • [select]
  • [route] / [routepass]

Week 11

  • Interactivity
  • Human interface devices: game controllers, mouse
  • Parsing input data from external devices

Week 12

  • Using smartphone sensors: accelerometer, gyroscope
  • Miraweb
  • Open Sound Control (OSC)

Week 13

  • Spatialization through the 20 speakers in the Sonic Arts Lab
  • Ambisonics
  • Moving sound in space custom/sensor-controlled trajectories

Week 14

  • Class concert

Assignments

Creative Project 1

  • Creative a monophonic FM synthesizer in Max
  • Save at least ten different timbres, each utilizing envelopes of each FM parameter
  • Submit a 60-second sound recording that exhibits at least five different timbres

Creative Project 2

  • Create a Max patch that can play audio files and process signal in various ways
  • Include simultaneous playback of multiple audio files/buffers
  • Exhibit automated control for at least five parameters
  • Manually control for at least four parameters during performance
  • Use signal processing techniques we have covered in class
  • Record and submit your 90-second performance

Test

  • Hands-on patching/debugging test in the Integrated Arts Media Lab

Final Project

  • Create a Max patch tailored for live performance, which synthesizes and/or plays sound files
  • Any type of sound synthesis we talked about in class is allowed: additive, subtractive, FM, AM, PM, wavetable, granular, etc.
  • Include signal processing techniques we covered in class
  • Control as many parameters as possible through automation, timed changes, presets
  • Use of multi-channel audio is allowed and encouraged
  • At least five of your performance controls must be mapped to an interactive controller, such as, a smartphone or tablet, game controller, MIDI controller (only for CC)
  • Optionally, you can use computer keyboard, mouse, or a MIDI keyboard for note input
  • Perform live in class for 1’30”