Processing Piano Tutorial Videos in the Browser

by catchmeifyoucanon 9/4/2025, 2:57 AMwith 9 comments

by vunderbaon 9/6/2025, 9:24 PM

I'm VERY familiar with Synthesia. In order to generate those animated videos of falling notes, a corresponding MIDI file for the song has to exist. I would think it'd be better in most situations to build the purported "piano tablature" off of that instead.

While neat from a technical perspective, this seems like a solution in search of a problem.

EDIT: On the other hand, a cursory search did not find any midi/piano sheet music for "Hi Nanna: Samayama" - so maybe only having this "falling note video" is more common for certain music.

by thimabion 9/6/2025, 9:22 PM

Great idea and execution, congratulations!

I used to learn songs from piano tutorials like these, too, and had to do the manual work of annotating keys and chords. It’s nice to see a very real pain point being eliminated — maybe I’ll even find some new songs to learn :)

by ameliuson 9/6/2025, 8:18 PM

I'd filter piano tutorials based on interesting music. Playing jingle bells (as in my first piano book) isn't exactly motivating. I guess this especially holds for older people who have already acquired a certain musical taste.

by jacquesmon 9/6/2025, 10:28 PM

I use Onsets and Frames to import youtube videos into my piano practice software. It works like a charm and I'm quite impressed with the accuracy of the transcription. I really don't like the 'piano roll' style software because that's just not how music is represented in a logical way. Compared to regular sheet music it is a pretty poor medium.

by tangueon 9/6/2025, 8:33 PM

This is really a great idea. While fancy these piano tuts are quite useless compared to something like guitar tabs. Hope it will improve

by bcowdeon 9/6/2025, 9:55 PM

I really like the idea of being able to import tutorial videos into a tab-like format. I have a tool which puts tabs into browser storage and displays them (https://pianoboi.site/) - It would be really cool to provide an import feature from your app.