I thought I'd post about a recent tool that was actually created by Facebook that has the ability to accurately separate an mp3 into its stems. I've actually been using it a ton for just practicing drums in general, but obviously would work great in the context of what we're all about here.
The code from their paper entitled: "Music Source Separation in the Waveform Domain" is here: https://github.com/f...research/demucs
Included is the Python environment needed to take a MP3 and split it into stems for drums, bass, vocals, and "other" (often the guitar). It can do this with pretty remarkable accuracy in certain cases. I've posted an example from a Metallica song. You'll see that sometimes you get some bleeding in the guitar/vocals, etc., but using this in combination with potentially the full song as the "backing track", you could probably get something really high quality. I've tended to have better luck with bass + drums when it comes to the quality of the stems that are generated. Depending on the track all of the stems won't have high quality, but figured I'd at least demonstrate an example here of what you can do with just a pretty simple install!
Here's a link to the stems that were generated from Spit Out the Bone (Sorry, fixed the link here)