Oscilloscope Music

The stereo audio below is the drawing. The left channel drives the scope's X input, the right drives Y. Integer frequency ratios close the traces into shapes, so what you hear is the same curve you see.

This is a full song (A minor, 100 BPM, about 1:46), written in code: numpy for the synthesis, Pillow for the phosphor render, ffmpeg for the mux. Each note in the melody is its own Lissajous figure, one shape per scale degree.

I composed and computed the whole thing. The genre is Jerobeam Fenderson's; he's the goat of oscilloscope music. Built on numpy, Pillow, and ffmpeg, with inspiration from soemdsp-sandbox, jerobeam-modules, OSCAR, and Pippi. Source: github.com/djmango/oscilloscope-music.