One of my most prized possessions is my Yamaha VSS30 keyboard. With a little bit of know-how (and paired with FFMPEG), you can get some pretty neat results. The command I used to add visuals to the audio file is the following:
Essentially, this takes a piece of audio as input and creates a visual spectrogram. This particular filter is named the "showcqt". This relies on a discrete Fourier Transform and you can even set the preferred window size for analysis. With a large enough window size and ample buffering time, you would be able to see each MIDI note as a spike in the resulting visualization. With the applied fuzz and echo effects on the VSS30, you get some hairy visualizations around each note.