I definitely wanted to incorporate a music visualizer into this project somehow. At first I was looking at software based options, but was disappointed with most of the simple Linux based options. I started broadening my scope, looking for a way to make music visualization more interesting and unique than just some flashing pixels. At one point I was considering a ceiling projection method, but then ran across an article on HackADay.com on how to turn a CRT monitor into an oscilloscope.
It became immediately clear that this is what I’d have to do. Not only does a CRT fit perfectly with the vintage/analog vibe, but it also appeared to be an extraordinarily simple hack. CRT monitors display images using oscillating horizontal and vertical waves. Literally all you have to do is disconnect the +/- leads from the horizontal coils and hook them up to the +/- leads of a speaker wire. Audio sent through the speaker wire will trigger the horizontal oscillations on the CRT, responding perfectly to both amplitude and frequency of the music.
Electrical hazards aside, a steady hand and a little safety precaution is all it took to turn this simple CRT into a beautifully mesmerizing music visualizer. When you watch the waveforms bounce around, reacting to every note and sound in the music, it makes you want to keep trying different songs just to see how they look. Sure there are many digital visualizers that essentially do the same thing, but seeing it like this, in a more analog, imperfect, almost organic fashion, is an entirely new experience.
On the faceplate there's an Amplitude adjustment knob. It's a potentiometer spliced into the speaker wire to control the magnitude of the signal to the CRT. The wave can become too spastic and distorted at high volumes, so the ability to dampen it down is desirable for a cleaner image.
There's also a brightness adjustment for the CRT that's driven by servos rather than direct input. Read more about that in the Raspberry Pi section down under the Arduino header.