# Changelog ## 2026-04-03 - **Track 18: Tape Memory** — Db minor, 90 BPM. Mellotron flute, FM bells, drift oscillator, crotales, granular texture, hard_sync bass, PWM lead, wavefold, ring_mod. Theremin solo at peak. Singing bowls + tingsha. Everything pytheory 0.40.9 can do. - **Track 24: Apex** — Eb minor, 140 BPM. Koto hook, wavefold bass, mellotron strings, timpani, two hooks, 32nd koto shreds. - **Track 23: Shruti Lofi** — D minor, shruti just intonation, 75 BPM. Microtonal lo-fi hip hop. Kalimba, Rhodes, sitar, mellotron flute, tambura drone, lazy boom bap, vinyl crackle. - **Track 22: Beast Mode** — G minor, 135 BPM. Trap + sitar hook + mellotron flute drop + timpani war drums + 808 slides. Sidechained saw bass. - **Track 21: Cathedral** — D minor, 60 BPM. Tubular bells (taj_mahal 0.85), bagpipe, mellotron choir, timpani, pipe organ, mellotron strings, kick in cathedral reverb. - **Track 20: Music Box Factory** — G major, 108 BPM. Eight tuned percussion instruments stacking. Kalimba, vibraphone, celesta, marimba, glockenspiel, xylophone, crotales, timpani. Tubular bells. - **Track 19: Emergence** — E minor, 100 BPM. Singing bowls + tingsha opening, didgeridoo, mellotron flute, sitar 16th arps building to 32nd shreds, synths emerge at bar 33, both worlds collide, mellotron solo, bowls alone ending. - Waveforms: extended to 3:16 with FM solo, saw/square duet, sine/triangle/PWM canon, finale. Added FM, PWM, wavefold synths. - play.py: track picker loops back after playback, extracted _play_track() ## 2026-04-02 - **Track 17: Waveforms** — F minor, 118 BPM. Percussive synth blips stacking (sine→triangle→square→saw), occasional sustained pads, 808 sub, rhythmic drums with ghost notes. - **Track 16: Intrusive** — Bb minor, 92 BPM. Repeating saw synth phrase, Rhodes fights it, drums fight it, acceptance with sub bass and cello. - **Track 15: Voices** — F# minor, 65 BPM. Five vocal parts multiplying, piano as reality. - **Track 14: An Exception Occurred** — Eb major→minor→major, 80 BPM. Piano arc through stability, spiritual seeking (tambura, sitar, om chant, tabla, tingsha), psychosis (wild theremin ±5 semitone bends, chaos drums, sub bass), despair, hymn (pipe organ), recovery (cello), gratitude. - **Track 13: Sleight of Hand** — D minor, 100 BPM. Nine genre shifts in 72 bars. The 303 through the choir is the moment. - **Track 12: Gravity** — C minor, 88 BPM. Hip hop with sparse piano, 808, boom bap + trap hats. Eastern touches: buried tambura, singing bowl bookends, sitar bend in breakdown. - The Interruption: breakbeat delay (jungle echo), reese wide with reverb+delay, kick808 distortion, velocity list fades, harp shimmer delay - The Observatory: stereo spread — radio left, signal right, broadcast crosses the field, clap delay - Voltage: stereo panning — saw left (spring), pulse right (taj_mahal), noise offset - Acid Reign: stereo 303s with delay (different times, opposite pans), clap delay, cajon slapback, Rhodes louder/wetter panned left - Deep Time: stereo spread across 17 parts, three reverb spaces (taj_mahal/cathedral/algorithmic), long delays on percussion, tingsha and singing bowls extended through full track - Raga Midnight: doubled to 56 bars (~2:30). Proper raga form (alap→jor→gat→jhala→tabla solo). 808 drop with Re→Ga→Re→Pa(-36) bass pattern. Delay on tabla/dhol. Velocity list fades. - Chakra: stereo spread (uke left, Rhodes right, theremin far right), sitar louder/drier, opening reverbs pulled back - Silk Road: stereo caravan (east→west = left→right), dry-to-wet koto, tabla grows with caravan, play_phrases() helper - Ghost Protocol: stereo field overhaul — Rhodes delay, trip-hop dub snare, arp panned right, NES louder, bass sidechain, pluck stabs wide - pytheory v0.40.8: fix hold() inflating Part.total_beats and Score.duration_ms ## 2026-04-01 - **Track 12: The Observatory** — G minor, 112 BPM. Chapel through shortwave static. Square-wave organ, choir, saw arp, supersaw halo pad, theremin signal. Contributed by ChatGPT 5.2 Pro. - **Track 11: Voltage** — F minor, 138 BPM. Raw oscillators only — sine sub, saw lead (spring reverb), pulse counter-rhythm (taj_mahal). Saw arp solo, pulse arp solo, 32nd note chaos peak. - **Track 10: The Dialogue** — E Phrygian, 75 BPM, shruti just intonation, A=432 Hz. Sitar (human) and theremin (machine) find each other through call-and-response. House beat enters at bar 41. - **Track 9: The Temple** — A Phrygian, 65 BPM, shruti just intonation, A=432 Hz. Singing bowls, tambura, harmonium, bansuri, tabla solo, triple sitar solo, theremin at the peak, electronic kick. - The Interruption: flute + harp added, 32nd note hat fills, sidechain 0.6, stereo string quartet - Culture Clash: removed for rework - **play.py** — curses track picker, progress bar, `--from-time`/`--to-time`, `--pitch`, `--solo`/`--mute`, WAV/MIDI export, album ordering - Acid Reign: cajon louder (0.5), less reverb (0.2) - ASCII art header added to README ## 2026-03-31 - The Interruption: 808 kick four-on-floor, breakbeat 0.9, kick 1.0 - The Interruption: sub bass 0.9, sub_osc 0.7 ## 2026-03-30 - **Track 1: Raga Midnight** — D Phrygian, 90 BPM, shruti just intonation. Tabla, sitar, tambura, dhol. Hand-written tabla solo with tihai cadence. - **Track 2: Culture Clash** — D minor, 95 BPM. Didgeridoo drone → Rhodes → sitar arps + tabla → Mario World 1-1 → Hotline Bling on steel drum → Nokia ringtone → theremin solo → DCI marching cadence. - **Track 3: Chakra** — Root to crown journey. Shruti tuning at A=432 Hz. Ukulele, singing bowls, harmonium, tambura, sitar, theremin. Tempo: 60 → 90 → 108 → 135 BPM. - **Track 4: Ghost Protocol** — F minor, 128 BPM. Portishead dark Rhodes → trip-hop beat → hypnotic saw arp → kick at bar 49 → NES melody at the peak. - **Track 5: Acid Reign** — A minor, 140 BPM. Dual 303s (saw + square), five groove patterns, resonant filter sweeps (Q up to 20). Cajon in cathedral reverb, Rhodes pad, 808 sub at 1.0. - **Track 6: Silk Road** — D minor, 95 BPM. Koto (China) → sitar + tabla (India) → mandolin + doumbek (Persia) → guitar + cajon (Mediterranean) → all together. - **Track 7: Deep Time** — B minor, 40 BPM, just intonation. 7.5 min ambient drone. Tingsha, rainstick, finger cymbals, singing bowls, didgeridoo, sine drones, harmonium, theremin, choir, cello. - **Track 8: The Interruption** — D minor, 85 BPM. Harpsichord + string quartet. Bar 33: DnB breakbeat + sub + reese slam in. Strings keep playing. Beat dissolves, quartet wins. - Project setup: README, pyproject.toml, .gitignore