This project is simple: when you play the intro to Linkin Park’s “In The End” on a digital piano that’s connected to a Raspberry Pi, the Raspberry Pi plays the song’s chorus.
I initially wrote a prototype script that printed lyrics to the console when the notes were entered correctly, but I wanted to play the actual recording through a speaker. I couldn’t find a clean splice point before the chorus, so I used the TensorFlow-powered Spleeter library to separate the vocals from instrumentals. I then used Reaper to blend the isolated vocal pickup with the rest of the chorus. Finally, I wrote a systemd unit file to ensure that the program would boot at startup without requiring manual intervention.
In the end, I think it turned out pretty well.