[All work](/work?type=work)

# Piano Waveform Visualiser

A C++ keyboard where the keys you hold change both the sound and the waveform drawn beside it.

[Source code](https://github.com/Slaymish/PianoVisualiser)

Independent development. C++17, SDL2 and audio synthesis.

![A decaying two-peak waveform above a run of keyboard blocks, one key in black.](https://cdn.sanity.io/images/qnuj1c4o/production/aea20ec1156acaac71376cacfbd1ff838a9cf6bb-1600x900.png?w=1280\&q=80\&auto=format)

SDL2 handles the window and the audio. Each key has a frequency, the selected ones get summed into a single signal, and the display draws that while showing each key's own frequency on hover.

A slider and the arrow keys change the display scale. That's about all the controls it has.

## State

Keyboard, synthesis and waveform display all work. MIDI and file input were left for later.

[All work](/work?type=work)
