Time & clocks ============= Forking & simultaneity ---------------------- - :doc:`Multi-Part Music ` — Plays two coordinated but independent parallel parts, one for oboe and one for bassoon. - :doc:`Blocking False ` — By default `play_note` blocks execution until the note is done playing. - :doc:`Play Chord ` — Demonstrates `ScampInstrument.play_chord` by playing a famous progression, and then playing it a few more times randomly up and down the keyboard. - :doc:`Chords and Noteheads ` — Chords with per-note noteheads, and a start_chord handle whose pitches change over time. - :doc:`Voice Leading / spelling policy ` — Rule-based four-part voice leading over a scale, spelled in E major via the `default_spelling_policy` argument. *(needs scamp_extensions)* - :doc:`Guitar Arpeggios ` — Fingerpicking-style guitar arpeggios built from overlapping held notes. - :doc:`Octave Lines ` — A short passage of random notes for violin and piano, which uses the optional note properties argument to `play_note` to apply ottava when notes are very high or very low. Setting & changing tempo ------------------------ - :doc:`Tempo Change ` — Same as Hello World example, but repeatedly, with changing tempi. - :doc:`Piano Phase ` — Steve Reich's Piano Phase: the same figure forked at 100 vs. - :doc:`Evolving Form ` — A piece for cello, pianoteq (MIDI), and SuperCollider (OSC), shaped by envelope-driven formal parameters. *(needs scamp_extensions)* Advanced -------- - :doc:`Nested Tempi ` — Music running with nested tempi: a trombone plays a cyclic quarter-note pattern on the session's accelerating pulse, while a trumpet, forked onto a child clock, plays a similar eighth-note pattern. - :doc:`Metric Phase ` — Rate targets aligned to metric phase, so accelerations and decelerations land on downbeats.