Notation & engraving
Basics
Generating Notation — Plays a simple C Major arpeggio, and generates notation for it.
Time Signatures — Plays a simple C Major arpeggio, and generates notation for it in three different ways: - with a 3/8 time signature - with a 3/8 time signature for the first measure followed by 2/4 - with alternating 3/8 and 2/4 time signatures - with a list of bar lengths determining time signatures
Export to MIDI File — Records glissandi with microtonal pitches and playback params (fast-forwarded), then exports the performance as a MIDI file.
Quantization
Quantization of Random Floating-Point Durations — Similar to the “Random Durations and Rests” example, except that now we generate notation.
Simplified Quantization — Same as last example except that we see two different levers for simplifying the notation: max_divisor (which defaults to 8) sets a hard cap on how finely we can divide the beat.
Quantization Comparison — Records a loose piano improvisation against a metronome, then plays back the quantized version.
Piano Phase — Steve Reich’s Piano Phase: the same figure forked at 100 vs.
Special notations
Note Properties — Shows how the fourth (optional) properties argument to “play_note” can be used to affect other aspects of playback and notation, such as articulation and noteheads.
Staff Text — Demonstrates various ways of adding text annotations to notes that are played.
Special Notations — Ornaments, tremolo and other single-note notations.
Spanners — Demonstration of starting and stopping various spanners, such as slurs, hairpins, trills, brackets, and pedal lines.
Multiple Voices — Demonstration of how to place notes in specific voices within a staff/part.
Multiple Voices with Octave Lines — Same as the voices example, but with ottava applied to certain voices.
Microtonal Playback and Notation — Plays a few microtonal chords and notates them, turning on exact microtonal annotations.
Performance Post-Processing — Post-processes a recorded Performance of a random walk of thirds and fifths, so that every time three consecutive notes are a triad, they are slurred together and spelled consistently.
Abjad & pymusicxml tweaks
Key Signature via pymusicxml — Adds a key signature by exporting through pymusicxml and setting it on the first measure.
Double Score — Records two performances, turns them into scores, renders to abjad, and sticks them together!
From live input
Notating Computer Keyboard Input — Same as Computer Keyboard Input, except that a metronome is playing back while the user plays notes with the keyboard, and the result is rendered as music notation.
Run as Server and Render Scores — Runs the session as a server, repeatedly recording short fragments and popping up a score for each.
Other
Note Graph — Renders a saved Performance two ways: as graphic notation via PartNoteGraph (note height = pitch, width = volume, color = vibrato frequency), and as a traditional quantized score. (needs scamp_extensions)