--- name: sound-design description: Procedural sound design with the sfx engine — writing a cue sheet against a video's timeline, which sound goes with which visual event, gain hierarchy, panning, musical key, automatic mastering to -14 LUFS, adding new generators, and verifying sync. Use when adding, changing or checking audio, SFX, music beds or loudness for any video in this repo. --- # Sound design Most AI-made motion graphics are silent. Sound is what makes a piece feel produced. The `sfx/` engine synthesizes every sound in pure Python stdlib: no samples, no licenses, no installs, same output on every run. It reads the same timeline JSON as the picture, so sound can't drift out of sync. ## How it fits together | File | Role | |---|---| | `sfx/synth.py` | generators: each returns mono samples at 48 kHz | | `sfx/mix.py` | `Mix`: place sounds in time, master to a loudness target, write WAV | | `sfx/loudness.py` | BS.1770 integrated loudness (matches ffmpeg's ebur128) | | `sfx/cues/