Two variants modeling Himalayan singing bowl acoustics:
- Strike: mallet hit with chirp from inharmonic partials, long ring
- Ring: rim-rubbed sustained tone with slow build and beating modes
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Wurlitzer: reed-based, nasal, biting — bark on hard hits
- Vibraphone: aluminum bars with motor tremolo (spinning disc)
- Pipe organ: multi-rank (8'+4'+2'), constant air, wind chiff
- Choir: formant-filtered glottal source, vowel control via lyric=,
no vibrato (ensemble handles voice variation)
- All four with instrument presets, audio demos, and docs
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Click count-off → snare groove with quad sweeps and bass splits →
flams and diddles → buzz roll into big unison hit.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Teental ends with bayan fill. Keherwa has ge_bend accents throughout
plus a bend-heavy final bar. Chakradar preceded by bayan showcase.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The melodic renderer was choking all signal at each new note,
killing strum/hold resonance. Removed — notes now naturally
overlap and ring out. Banjo lick now uses 16th notes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Tine + tonebar + electromagnetic pickup model with bell-like
harmonics, metallic attack transient, and pickup nonlinearity.
electric_piano instrument preset now uses rhodes_synth instead of FM.
FM section updated to show bells. Audio demos for both.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Detects silence below -60dB threshold and trims with 0.2s tail
for natural decay. 69 audio files regenerated.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Basic waveforms now play without envelope shaping so you hear
the raw timbre. Complete Example bass at 1200 instead of 600.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Every synth section in the docs now has an audio player.
Classic waveforms, FM, supersaw, and all 31 instrument synths
each play a C major arpeggio for easy comparison.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Both pages now show the same rock beat example in G major with
piano, saw lead, triangle bass. Code and audio are in sync.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The pad envelope has slow attack — wrong for fast acid lines.
Updated both the docs code and the audio generator.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Complete Example now uses rock beat with piano/saw/bass in G major.
Added audio player for the arpeggiator code example.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
save_wav was writing mono — now properly writes stereo from
render_score's (n_samples, 2) output. All 31 files regenerated.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
28 audio samples total. Tabla (teental, keherwa, chakradar at fast
tempos), dhol, dholak, mridangam, metal blast, cajón. No labels
on stacked players.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
20 WAV files covering quickstart, sequencing, drums, playback,
and cookbook examples. Audio players embedded after every code
block that calls play_score().
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- docs/generate_audio.py renders 12 code examples as WAV files
- Audio players embedded in sequencing and drums docs via raw HTML
- Covers: piano hold, articulations, dynamics, filter ramp, rock,
bossa nova, djembe, tabla, marching snare, ensemble, strum, swell
- WAV files gitignored — generated at build time
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>