Schedule
Our precise order of topics and their accompanying materials will periodically change and/or be updated, at the discretion of the instructor, based on class pacing and other factors. Schedule and materials will be regularly updated on this website and announced in class. Changes to, or additions of, recordings, readings, or videos may be appended to this current schedule below. Additional materials will be distributed on this website or in class. Our schedule follows the Current Bates Academic Calendar. Check frequently for updates!
Calendar of Deadlines
Subscribe to our class Google calendar to see our upcoming deadlines. Daily schedule of events, tutorials, topics, terms, listening, guests, and other relevant information follows.
Week 1: Jan 14
Course Overview
Wednesday 1/14 — Orientation & Setup (No patching)
In Class
- Course overview and expectations
- What “sonic systems” means in this course
- Semester arc and concert requirements
- Website walkthrough + access check
- GitHub accounts and workflow overview
- Max installation check
Tutorials
Assignments
- Setup your GitHub account
- Be sure to complete the Intro Survey
- Install + authorize Max (if using a personal license), or book time in the computer labs
- Watch the Max and GitHub intro videos above, rebuild tutorial patches, and commit them to your GitHub account by our weekly deadline: Saturdays, 11:59 PM.
- Make these starter patches (from the video):
Patches
starter.patch.v01.maxpatstarter.patch.v02.maxpat
Terms, Concepts, Objects, Shortcuts
Use this list as a reference. Leave comments in your patches to remind yourself what these are and how they work.
- realtime vs. offline electronics
- computer music
- patch / subpatch
<p>/ abstraction - object box
command + n - lock/unlock patch
command + e - message box
<m>/ comment box<c> - control rate (Max) vs. signal rate (MSP)
- resize boxes
command + j - duplicate an object
command + D - open help file:
option + clickon any object
Week 2: Jan 19
Signal Flow in MaxMSP
Monday 1/19
MLK Jr. Day — No class.
Wednesdsay 1/21 — Signal Flow & Debugging
In Class
- signal vs control
- gain staging and safe monitoring
Tutorials
- MaxMSP Keyboard Shortcuts (MacOS and Windows)
- Introduction to MaxMSP Slides 19—35: History through New Terms
- MaxMSP Beginner’s Cheatsheet (includes Data Classes)
Patches
_scaffold.v01.maxpatworking.patch.v01.maxpatlg.sound.in.v01.maxpatlg.sound.out.v01.maxpat
Week 3: Jan 26
Filters + Resonance
Monday 1/26 — Oscillators & Envelopes
In Class
- waveform families
- oscillator objects
- ADSR and envelope-as-time-system
Tutorials
Video Tutorials
In lieu of class during inclement weather, follow the video tutorial and complete patches before Wednesday.
Listening
Patches
01.basic.waveforms.maxpat02.ADSR.maxpat
Assignments
- Finish:
01.basic.waveforms.maxpat02.ADSR.maxpat
Terms, Concepts, Objects, Shortcuts
- oscillator
- sine
<cycle~>/ saw<phasor~>/ triangle<tri~>/ square<rect~> - ADSR / envelope
- duty cycle
- help files:
option + click
Wednesday 1/28 — Monosynth and MIDI Input
Patches
03.monosynth.variable.note.length.maxpat04.additive.synth.with.randomization.maxpat
Terms, Concepts, Objects, Shortcuts
- synthesis engine
- MIDI (Music Instrument Digital Interface)
- monosynthesizer
- additive synthesis
Week 4: Feb 2
Formant Modeling + Source–Filter Systems
Monday 2/2 — Class Canceled; Illness
Wednesday 2/4 — Polyphony and Voice Allocation
Boiler (Downloads)
Patches
bach.poly.05.polyphony.maxpatsimple.voice.polyCore.v01.maxpat
Terms, Concepts, Objects, Shortcuts
- synthesis engine
- MIDI (Music Instrument Digital Interface)
- monosynthesizer
- additive synthesis
Week 5: Feb 9
Karplus–Strong + Waveguide String Models
Monday 2/9 — Euclidean Rhythms in Bach
Boiler (Downloads)
Optional Reading
Patches
bach.interaction.t07.euclidean.idea.maxpatbach.interaction.t08.melodic.profile.maxpat
Wednesday 2/11 — Karplus-Strong String Synthesis
Boiler (Downloads)
Patches
Karplus-Strong.v02.maxpat
Assignment
Week 6: Feb 23
Bowed and Wind Instrument Physical Models
Monday 2/23 — String Stiffness
Patches
Karplus-Strong.v02.maxpat(…continued; add stiff string model)Karplus-Strong.v03.randomization.maxpat
Wednesday 2/25 — Resonance Models
Boiler (Downloads)
Listening
Video Tutorial
Patches
modres.from.a.chord.maxpat
Assignment
- Create a free account, download, and install SPAT and Modalys from the IRCAM Forum website.
Terms, Concepts, Objects, Shortcuts
- simple harmonic motion
- resonance
- dampening
- the
modresalgorithm - filter
- filters in parallel and in series
Week 7: Mar 2
Modalys — Strings, and Plates
Monday 3/2 — Introduction to Modalys
Boiler (Downloads)
Tutorials
Listening
Patches
01.mlys.string.force.maxpat
Assignment
- Before Wednesday: Explore the Modalys for Max Examples. In Max, go to Extras -> Modalys for Max. Choose the patches within the categories “Complete Instruments” (blue), and “Other Exampels” (green). Be sure to click the “TV” icon to take the patch out of “presentation mode” and poke around to explore the logic of the patch. Imagine how you might use these on your own. Find 3 that you like, and we’ll discuss them on Wednesday.
Wednesday 3/4 — Introduction to SPAT
Boiler (Downloads)
Tutorial Video
Tutorials
Patches
01.spat.boiler.maxpat(next week)03.sound.file.source.maxpat
Week 8: Mar 9
Material Properties and Hybrid Physical Models
Monday 3/9 — Spat Coordinates
Patches
02.very.clicky.maxpat03.sound.file.source.maxpatrandom.aed.coordinates.maxpat- The two patches crossed out above include material covered in our update to
02.very.clicky.maxpatas well as the assigned work due on Wednesday.
Assignment
- For Wednesday: find your completed
modres.from.a.chord.maxpatpatch. Make 2 instances of this patch, each one with its own chord. Send different audio signals into each instance, depending on how you cable things. Send the output of each of these 2 resonators into your01.spat.boiler.maxpatas spat input sources 1 and 2. Create another source 3 using today’s03.sound.file.source.maxpatpatch. Give each of the 3 sources its own spatial coordinates. Experiment with keeping 1 or 2 of the sounds static (not moving in<spat.oper>) versus giving them motion (using logic developed in our coordinates patches from today). Work to differentiate these 3 sounds so that they don’t sound the same — distinguish them using the types of sounds you use as input, the chord harmonies/pitches you provide to your resonators, and the spatial movement for each one. Play around with the reverb controls too — have fun!
Week 9: Mar 23
SPAT~ and Multichannel Audio
Monday 3/23 — Spat, Continued
Upcoming Quiz
Expect a short, in-class, written pop-quiz over the Debugging in Max slides sometime in the next 1-3 class sessions. Review the slides for preparation.
Tutorials
Patches
03.sound.file.source.maxpat(postponed)mlys.reed.tube.v01.maxpat
Assignment
- For Wednesday: Make a new version of the previous assignment that uses the following sound sources: (1) a sound file, (2) your Karplus-Strong patch, and (3) the Modalys string or today’s Modalys reed/tube patch. Be prepared to share your work in class. — have fun!
Week 10: Mar 30
Computer-Assisted Composition
Monday 3/30 — Asynchronous, Spat
Assignment (Due Saturday night as usual)
Wednesday 4/1 — Guest Presentation (In Person)
Jason Thorpe Buchannan, guest composer
More coming soon — check back frequently!