Spleeter is a free command line tool to split vocals from MP3 using machine learning. It uses pre-trained neural networks and analyze a given audio file. It generates two WAV files in the output; one file contains vocals extracted from audio and then other WAV file contains only music. The accuracy of this tool is not 100 percent on every audio file but it is amazing. It can precisely detect the signals in the audio file which are vocals or some other instruments and extracts them accurately. There is a single command that you have to execute on your terminal and then it will take care of the rest. This software is written in Python and you will need Anaconda on your PC or VPS in order to use it.
The process of separating vocals from a song or a MP3 file is called “Blind Source Separation”. In this technique various signals in the source audio are identified and then separated. There is a long manual method of doing the same using some audio processing software. But here you can do that by just running one single command. The tool here uses some pre-trained neural networks and then precisely extracts form the vocals from it. Not only vocals but you can use it to extract drums, bass, piano from the source audio file.
How to Separate Vocals from MP3 with this AI based free Software?
Here I assume that you have Anaconda installed on your PC. If you don’t already have it then you can easily install it from here. After that, you can open a terminal and start with the downloading process. Here you have to clone the repository and then you can simply start with the setting process. Use the following command to clone the Spleeter repository from GitHub and then you can simply start with the setting up process.
git clone https://github.com/Deezer/spleeter
Run these commands one after another and then you are all ready to use Spleeter. These commands will take a few minutes to complete and during the setting up process, you need to a little patient.
conda env create -f spleeter/conda/spleeter-cpu.yaml
conda activate spleeter-cpu
Now, at this point, you are all ready to use this tool for the separation process. You can keep an audio file in the Spleeter directory that you have cloned. There is even a sample audio file included in the repository, If you just want to test how it works then you can use the sample audio file. To use this software to separate vocals from the given audio file, you run the following command.
spleeter separate -i spleeter/audio_file -p spleeter:2stems -o output
When the above command finishes, you will find two WAV files in the output folder. One file only contains the audio and the other once contains the extracted vocals. You can hear then and see if the extraction was successful. Later you can see the advanced usage guide on the GitHub page of this tool and then use it accordingly.
This is the way you use this tool to separate vocals from song using AI. You can go through all the documentation of this tool and see some other advanced usage. There are some other models in it that you can download and use them for the faster separation process. It works fine on CPU but it will work faster on GPU.
Extracting vocals from the audio file is a very tough process if you do it manually. There are some paid tools out there that you can use for the same but the one I have mentioned here uses the machine learning to get the job done. The best part is that it is free, and I am really satisfied with the output that produces. Now you can see if it works out for you. Just grab it and go through the steps mentioned above.