Everybody knows those goofy special graphical effects generated by media player when you listen to a song. I never really liked them because they seem random and don't seem to synchronize with the music track tempo at all.
In a concert, sometimes you see light effects switching on and off, synchronized with some instrument tempo, it seems they're either wired to the instruments or controlled by some guy.
I wonder if a software could do the same if you "circle" a certain part of the song which has a single musical note which is repeated in the song, so that the software can scan through the entire song to find similar notes to generate a tempo file, so that I can then wire this to some light effects or some 3D thing.
I know how to make C++ application, I was taught the physics of signals and how electronic filters work (I also remember a little about fourier series), but I've no ideas what sort of libraries exists and if there are algorithms dedicated to this kind of thing.
So the goal of that application would be to identify more or less similar parts of a given part of a song. In a sense it works a little like voice recognition software.
Are there (open source) C++ signal processing libraries doing this type of stuff, am I the first guy to think about this, and how hard is it to do ?