> 4-6 stems (drums, bass, others, vocals + opt. guitar, piano):
- Currently when used on AI-generated music, usually hihats will be left behind.
- All the metrics provided for Multisong dataset on MVSEP
- Consider using the already well-sounding instrumental (or even ensemble), possessed with a dedicated model in the linked section first, and then separate using the following 4-6 stem models
- You can slow down your song by x0.75 speed - potential result - more elements in other stem and better snaps and human claps using 4-6 stems or drums model (read the Tips to enhance separation #4 for more).
- MVSep Ensemble (vocals, instrum, bass, drums, other) (2025.06.30) - premium only
SDR bass 14.85, drums 14.33, other 9, vocals 11.93
All the metrics are better than the SW model, but consider passing the other stem through the SW below to get piano and guitar stems too
- Other MVSEP 4/8 stems Ensembles (premium) - similar or better results then the SW with newer single stem models combined, various ensembles to choose from, freedom to experiment.
- Logic Pro (May 2025 update) / BS-Roformer SW 6 stem | MVSEP | uvronline
SDR bass 14.57, drums 14.05, piano 7.79, guitar 9.00, other 8.66, vocals 11.27.
Currently, the best SDR for a single model bag for all stems but vocals; drums have lower fullness than MVSep SCNet XL drums 14.26 vs 21.21). Excellent guitar and piano stems.
“Guitar model sounds better than demucs, mvsep and moises” - Sausum [at least for models available at the time]
“It's not a fullness emphasis or anything, but it's shockingly good at understanding different types of instruments and keeping them consistent sounding” - becruily
Vocals stem doesn’t have the biggest metrics, but are good for deep voices.
Drums lacks some fullness but “I got better drums/bass separation with that model than with any others when input is some live/rehearsal recordings with shitty sound” - jarredou
Although, compared with Mel-Roformer drums on uvronline:
It “separates far far better when it’s programmed instruments compared to actual recorded ones” - isling
“Roformer SW is putting finger snaps and foot taps as vocals and in the vocal stems.” - GodzFire
“Gets not just drums but anything percussive/non-melodic. Which I personally don't mind, but [...] it does cause problems with drumsep models because they're only expecting standard drums.”
Bass can be occasionally worse vs demucs_ft because bass stem Demucs architecturally “Considers not only spectrograms but also waveforms”.
It “can't differ an electric bass with pedal effect from an electric guitar” - qraiqu
"Better than Lalal.ai by a long shot too" - nowarrantywarren (they started using similar if not the same model since then).
As for MVSEP at the time “just as good a job on vocals as the paid version's ensemble preset.” (lots of newer ones have been released since then).
In UVR it takes two hours for overlap 11 for a 4 minute file to separate on 6700 XT (using DirectML). Keep it at 2 (the fastest) - it will also take 2 hours, but on only i3-7100u (GPU Conversion disabled).
Highest SDR with 882000 chunk_size. 352800 on 4GB NVIDIA GPUs works faster with this or lower than 485100 setting. Some people prefer using it with overlap 8.
SESA Colab can apply phase remix demudder for this model.
- MDX23 v.2.5 by ZFTurbo, fork by jarredou (here; 4 stems when they're enabled)
Multisong dataset SDR bass: 12.58, drums: 11.97, other: 7.28, vocals: 11.10 (for v2.4)
It’s weighted ensemble of various older 4 stem Demucs models with weighted ensemble of now outdated 2 stem models for 4 stem input, so the metrics for RAW 4 stems output (without getting instrumental from ensemble first) will be a bit lower, and more for other stem - even by 1.38+, and 0.24+ for bass, and 0.02+ for drums (read more).
~"compared to this, demucs_ft drums sound[s] like compressed".
Read all the ensembles metrics sorted by instrumental bleedless.
- Demucs_ft (Colab | UVR | MVSEP | MVSepless HF)
- the best variant of Demucs 4 models, but the ensemble of Demucs models above (MDX23 or MVSEP multistem ensemble) is better, but still frequently a better pick for drumsep (separating drums further) than the SW model.
- xlancelab BS-Roformer (inference | model | paper | HF inference / #2) - trained on the SW model with additional percussion, synth and orchestra stems
- Huge-SCNet v1.2 model (4 stems) by Aname-Tommy - better drums SDR than demucs_ft
- SCNet XL IHF model (4 stems) by ZFTurbo
- BS-Roformer “MVSep Mega 53 Stems” all-in-one model | or single models (less VRAM-hungry) - 1.27GB | splifft | MVSepless HF / HF CPU / Colab / newer (you can pick which stems you want there, but it’s in Russian, and HF doesn’t support auto-translate, but Colab might)
Now the all-in one model is also available on MVSep (it’s been further trained, and skips undetected stems, FLAC is used to save space).
The model has vocal and lead vocal models, drumsep (hh, kick, toms, snare), drums, electric, acoustic and guitar, and lots of orchestral instruments (full list).
Lacks chello, bagpipes, braam, xylophone, Choir (choir/other), SATB Choir (soprano, alto, tenor, and bass) which are available on MVSep separately.
They might be muddier than the single models on MVSep (each public is only 77MB, so even less than the SW).
The resulting stems won't invert with the mixture, and work independently, so e.g. despite the BV model, vocals will also have BVs.
“Definitely sounds rough in many ways, and I wouldn't use it for anything critical. However, it has its strong spots and imo has a lot of potential” - musicalman
“most [stems] came out really muddy just bc of the song I used I would test more if it didn't take so long to run the model fully” - 5b
At least free Colab currently gives ^C error (from what e.g. jesse wrote), unless you use a 30-second song fragment with chunk_size 352800. Use the HF above instead, or:
“Try with forcing batch_size=1.
The Colab is forcing batch_size=2, it was a workaround for a click issue, but not needed anymore since the issue was fixed at source a while back”
In the separation cell, edit:
data['inference']['batch_size'] = 2
to 1
- jarredou
Consider using 88200 or 112455, so, a much lower than in the OG config from the config (441000), but the results can be unpredictable.
Works on default settings with 4070 Super and 4090, and with decreased chunk_size to at least 112455 on 4060 8GB.
You can use this memory optimized .py to process stems one by one, instead of all at the same time. It might increase system memory usage offloading VRAM depending on batch_size, and still process all stems.
The Colab errors out on full songs also with it, even with 88200 chunks and batch_size 1 and 2. Probably because of a lack of virtual memory available on local machines.
The all-in-one model also works in UVR, but because it probably forces batch_size 2, it might require more memory than MSST (older version of the MSST inference the UVR is based on had a bug where batch_size 1 caused skipping between segments, so it’s probably forced).
Alternatively, use this mask estimator mod by Frazer, so it will process each stem one by one instead of all in the same time DL.
Older 4 stems models continues later below