This is an idea to take a mixed music track, and seperate it out into tracks again. I have no idea how effective it may be until I actually try it.

So, the gist is that we build a spectrogram out of it, using Fourier Transforms, Wavelet Transforms, or maybe some sort of raw Resonator structure. Then, we pass over the spectrogram looking for changes across the spectrum that occur within a relatively short time window. We assume that these are all likely harmonics from the same instrument hitting a note, and extract them.

Then we end up with a bunch of small snippets consisting of, often, a single note. The hope, though, is that it will be a single complete note from a single instrument, with nothing else.

Then, we can run a program that looks for similarities between the samples and groups and splices them such that we end up with a complete track that's all the same instrument. Hopefully.

That's basically it. It'd likely take a really long time to run, but perhaps it could work. Perhaps.

It's more likely that this technique will work on acoustic music best, since they will have timing imperfections that will be easier to pick up on, since it's unlikely that the snare is truly exactly the same timing as the bass.

Electronic music, though, can have the snare and the bass begin at exactly the same time. Who knows, maybe people are better than I think and it's always garbage.