MSST Bible

Colabs (all current ones)

Page 106 of 228 · Open the original GDoc ↗

 

Instead of MVSep or UVRonline (which are explained in detail right above) you can use following Google Colab notebooks or Huggingface spaces for free (with time limits), which are virtual runtime environments configured to use specific architectures and models or ensembles

(see dedicated sections in the document outline for more information on specific Colabs).

Huggingface spaces have already running environments ready to go, while Colabs need to be installed by clicking two buttons every time you start using it - it always creates a new session (it can take 2-5 minutes).

If downloading from the site is too slow, go to settings and turn on “Use CDN…” or try out e.g. Free Download Manager and/or VPN.

 

For #2 of Makidanyee’s - by SqA5uid (squiddagod) - MDX23C models work along with other ones, some newer were added by the time vs below. Still uses the old MSST codebase before refactoring.

 

Makidanyee Colab - extended fork of the jarredou's inference Colab. It also has a few cool features like adding model names and parameters, queuing multiple models separation, manual ensemble out of existing separations (w/o Max FFT support), newer models, including FNO and HyperACE support, zip/unzip of separations and more. MDX23C models were fixed at some point as later it transitioned to use a new MSST codebase as the base for inference along with MDX23C fix, but might lack some of the latest models from the Colab above it. Theoretically it should support BigShifts added in 2026 commits of MSST.

 

old Fork of Makidanyee's - has MDX23C models fixed exclusively for the old MSST codebase (use only MDX23C [many other model links will be offline here]).

 

 

 

Manual phase fixer Colab by Squid (fork, no inference, 32-bit float support)

 

Phase fixer Colab by santilli_/Michael (separates, but this fixed gives weird results, don’t use it)

They swap phase from vocal model into instrumental model result to alleviate noise/vocal buzzing (OG, older outdated, newer outdated)

 

 

Manual Ensemble Colab (new link)

 

Manual ensemble Colab GUI fork by Squid (Max FFT works correctly, occasionally blocks errors)

 

 

Custom model import Colab fork by DtN (it’s uses the code from before the refactoring of MSST yet, and without Big Shifts added to MSST later)

 

 

mvsepless Colab Dzeta (big model base, and it has single 53 stem models - single one might crash)

(IG the Dzeta might be replaced in the future, visit:
https://github.com/noblebarkrr/mvsepless for the newest in case of any issues)

 

https://huggingface.co/spaces/noblebarkrr/mvsepless_zero_gpu

(alternatively you can only test one model in this one, it reaches quota fast with a timeout, but it can be bypassed with VPN). Currently the two are offline.

 

mvsepless_cpu Huggingface You can even use slower CPU HF versions in the meantime (click restart of necessary)

 

(offline) mvsepless Huggingface GPU by noblebarkrr (all models from above, all archs, plus single 53 stems or the all-in-one)

 

Not sure how the models list is up to date in mvsepless, so check the Makidanyee’s Colab (or the fork above).

 

The issue is, mvsepless is all in Russian, and Google Translate doesn't work on the whole HF site unless you highlight fragments of the text and use context menu to translate or for copy-paste, but might work in Colab. Alternatively you could use Transover extension for PC Chrome, so you can highlight a text, and it will be translated automatically.

It still use dim_t instead of chunk_size, unless it reads it from the yaml if it's not forced.

dim_t to chunk_size conversion (every model has different optimal chunk_size, sometimes already in the config). By default it uses 256, so 2.5s/112455 chunk_size, and none of the models are trained with such a chunk_size, and some have so high chunk_size, that they collapse at such a small chunk_size, so better get chunk_size from the yaml, and then convert it to dim_t, and se it there manually. It looks like “Предочитать высокую точность вывода” at the end is 32-bit float output for WAV. There’s is also overlap set to 2 by default, and probably batch_size set to 1, optional inversion, using optional spectral inversion in the process, custom model import, ensembling, inversion, and extracting fundamental frequency (F0) from audio with various methods (“essential for preserving pitch/melody in voice conversion”)

 

Older:

mvsepless_cpu_beta

mvsepless_gpu_off

(the one above less models, and probably older ones)

mvsepless_cpu_slow

 

 

SESA Colab by yusuf v3 - WebUI for the same ZFTurbo inference code (might differ in available models), probably supports auto-ensembling without having to use Manual Ensemble.

 

 

Music Source Separation Colab by jarredou (dead; and it also stopped having newer models added before going offline)

In April 2026, bigshifts were added in a newer Colab version here (but it currently falls behind in models support).

Single models inference - new MDX23C Drumsep model, most if not all Roformers (now also /w 1053, and unwa/Gabo models), plus VitLarge, and Bandit model support for SFX and MelBand Decrowd, plus experimental SCNet, and both MDX23C and Mel-Roformer dereverb.
Previously it was based on the old version of MSST (ZFTurbo inference/training repo) with optimized dependencies and frozen commit as a base to avoid issues with constantly changing OG repo, it was coming from the pre-refactoring period, but since 25.04.2026 it uses the refactored frozen MSST code as a base - it's probably more future-proof now, as more and more trainers use that version of MSST to train.

Detailed instruction how to use the Colab:
https://rentry.org/msst-colab

 

Use drumsep on already separated drums from already good sounding instrumental.

Use 4 stem models at best on already well separated instrumental with a single model.

 

Q: What is the TTA option?

A: “It means "test time augmentation", with ZFTurbo's script, it will do 3 passes on the audio file instead of 1. 1 pass with be with original audio. 1 will be with inverted stereo (L becomes R, R become L). 1 will be with phase inverted and then results are averaged for final output. It gives a little better SDR score, but hard to tell if it's really audible in most cases”

 

“overlap: This helps improve separation quality slightly. Higher overlap might give better results at the cost of slower processing speeds.” I'll go for 8. For instrumentals, oeverlap higher than

 

“chunk_size: Just leave it default unless the model uses higher chunk_size in yaml (the Colab overrides the parameter).

Sometimes it might fail to detect files uploaded on GDrive after mounting on Colab was done. Then open the file manager in the Colab and show your input folder, so your file will appear and start working. Sometimes adding a new code field with:
drive.mount("/content/drive", force_remount=True)

will be necessary (it forces remounting).

 

Colab instruction for newbies

 

0. If you plan to use your GDrive for input files, go there now, and create a folder called “input” and upload your files there. Create also "output" folder in the root GDrive directory (not sure if the Colab creates both already). That way you may decrease the time till timeout, when the Colab is initialized (esp. for people with slower connection), and also you will avoid an occasional bug when files uploaded on GDrive appear with some delay in the Colab.

The Colab is case aware - e.g. call your folder "input" not "Input" to match what is written in the Colab

1. Now open the Colab link in your browser

2. Click the “play” button on the "GDrive connection" cell. Grant all the privileges (otherwise there will be an error).

Don't use any other account than you're already logged in in the right top corner (otherwise it will error out).

3. Click the “play” button on the "Install" cell, and wait patiently til it's finished (it should show a green checkmark on the side afterwards) - be aware that rarely it can take a longer time than in most cases.

4. Now pick your model in "Separation" cell.

5. Click the “play” button on the "Separation" cell.

Don't provide any filenames in input_folder path there. It will batch process all the files inside the input folder.

Default settings are already balanced in terms of SDR, and not too resource-intensive (increasing overlap might muddy instrumentals a bit, 8 might have a bit more information on spectrogram iirc in vocals).

TTA increases SDR a bit. I'd leave it turned on, although it will separate 3 times.

Chunk_size should be left default, as it's the value used by most models, but iirc beta 6 uses higher chunks. Refer to the yaml of the model, as the Colab will override yaml setting.

6. After it's done, it will output the stems in the output.

7. Before closing, go to Environment and delete the environment manually, so you won't exceed your free Colab credits (so you’ll be able to use it e.g. next day).

You should be able to use the Colab for 3,5h+ per day (I think 4h in at least not one single separation job started).

If your GPU gets disconnected, change the Google account in the right top corner of the Colab and use the same account to mount GDrive.

 

(dead) Colab of 6 stem undef13 splifft - SW BS-Roformer model, but in FP16 (almost identical metrics than in the above, but faster)

 

 

(dead) Custom Model Import Version of the inference Colab by jarredou (above is a working Colab).
You can use it if we don’t add any new model to the main Colab on time, or you test your own models.

Just make sure you “you have downloaded the webpage presenting the model instead of the model itself.”

E.g. for yamls from GH, use e.g.:
https://raw.githubusercontent.com/ZFTurbo/Music-Source-Separation-Training/main/configs/config_vocals_mdx23c.yaml'

Instead of:
https://github.com/ZFTurbo/Music-Source-Separation-Training/main/configs/config_vocals_mdx23c.yaml'
And for HF, follow the pattern presented in the Colab example (so with the resolve in the address)
“If you don't delete the failed yaml/ckpts downloads you've made before [e.g. wrong link pasted], the Colab will continue to use them.” so delete the files manually from file manager or restart environment while still getting errors.

 

 

UVR5 UI HuggingFace (mirror) maintained by NotEddy and hosted by their friend - running on Zero GPU (A100 cluster), it has most models from the inference Colab. Might be faster.

(HF has a quota ~12 min of usage each 2 hours, and it doesn’t have TTA). Some advice to make it work on PC.

 

Multi-arch Colab by Not Eddy

Archs: MDX-Net, MDX23C, Roformers (incl. 1053), Demucs, and all VR models (incl. e.g. de-echo not supported in VR HV Colab) with YouTube support and batch separation.

If you encounter increased separation time (like 5 hours) using some high parameters for MDX-Net models (e.g. 512 segment size and 0.95 overlap) use another Google account. You could’ve reached free daily limit.

Plus, be aware that the Colab uses broken overlap from OG beta UVR core for Roformers, so the same fix for the issue applies:

Don't set overlap higher than 10 for 1101 segments, and overlap 8 for 801. Best SDR is dim_t=1101 and overlap 2.

 

Not Eddy’s multi-arch Colab in form of UI (like in e.g. KaraFan)

 

In case of “FileNotFoundError: [Errno 2]” try other location than “input”, or other Google account in case of ERROR - mdxc_separator (helps for both errors).

 

Or use the Colab below for Roformers instead:

 

 

MVSEP MDX23 jarredou fork Colab v.2.5 (dead) (2-4 stems)

v2.5 /w HQ_5 (experimental - muddiness, residues - set HQ_5 weight to 2.5 or lower),

/w SCNet XL

It has adjustable ensemble of BS-Roformer Viperx, Kim Mel-Roformer, UVR MDX-Net HQ_4, MDX23C HQ 1, VitLarge, voc_ft and has optional output to 4 stems using ensemble of various 4 stem demucs models. Original 1.0 code made by ZFTurbo (MVSEP).

Consider using already well separated instrumental as input from the above Colabs.

 

You can manipulate with weights there to have more of a specific model in the final result.

Default settings can be a good start.

Sometimes you might want to disable VitLarge.

Also, some people like to increase BigShifts to 20 or even 30 with all other default settings (some songs might be less muddy that way),

but default 3 is already a balanced value, although exceeding 5 or 7 may not give a noticeable difference, while increasing separation time severely over default settings. Read for more.

 

 

KaraFan by Captain FLAM

It allows using currently all notable UVR instrumental and vocal models besides BS-Roformer, also in ensemble (with suggested ensemble presets - start with P5 for instrumentals and P4 for vocals), but with further tweaks and tricks in order to get the best quality of instrumentals and vocals sonically, but without overfocusing on SDR only, but on the overall sound. Usually more vocal residues than instrumental Roformers.

 

 

MDX-Net Colab by HV

All older notable UVR-MDX models are in this fork, including HQ_5 (don't confuse with MDX23C arch) - very fast once the Colab initializes, but more vocal residues than instrumental Roformers.

 

MDX-Net alternative kae Colab (fork of one earlier HV Colab version, not sure if it still works)

In comparison to the above, it has the old min/avg/max mag mixing algorithms and optional Demucs 2 ensemble for only vocal models.

 

 

VR HV Colab (even older archs with even more residues, no de-echo model - it’s included in Not Eddy’s HF/Colabs above)

 

 

Demucs 4 - for 4 stems (lower SDR than MDX23 Colab)

You might want to use here already well separated instrumental with the methods above

 

Batch separation for Demucs by jarredou (less friendly GUI, but should be usable too)

 

 

older Drumsep by Inagoy (newer model above in Music Source Separation Colab) - kick, snare, hi-hat, toms (based on Demucs v3) - also use on already separated drums from already good sounding instrumental

 

 

LarsNet - kick, snare, hihats, toms and also cymbals separation (can be worse than the old Inagoy’s based on Demucs at times, but has more stems)

 

UVR on hugging_space (incorporates VR de-echo not available in HV Colab,

it’s slower than Multi-arch Colab above)

 

Bandit Plus, Mel-Roformer by jazzpear SFX separation - Colab by joowon

https://colab.research.google.com/drive/1efoJFKeRNOulk6F4rKXkjg63RBUm0AnJ

 

ByteDance-USS (SFX separation based on audio sample, March 2024 update)

https://colab.research.google.com/drive/1f2qUITs5RR6Fr3MKfQeYaaj9ciTz93B2

Colab by jazzpear94

 

MedleyVox Colab by Cyrus (can be used on MVSEP too)

with chunking introduced

Use already separated vocals as input (e.g. by these models).

 

Collabs for upscalers (AudioSR, FlashSR, Apollo and more) - here

 

 

 

Other Colabs

 

MVSEP-MDX23 v2

https://colab.research.google.com/github/jarredou/MVSEP-MDX23-Colab_v2/blob/main/MVSep-MDX23-Colab.ipynb (dead)

 

MVSEP-MDX23 v2.1

https://colab.research.google.com/github/deton24/MVSEP-MDX23-Colab_v2.1/blob/main/MVSep_MDX23_Colab.ipynb

 

MVSEP-MDX23 v2.2

https://colab.research.google.com/github/jarredou/MVSEP-MDX23-Colab_v2/blob/v2.2/MVSep-MDX23-Colab.ipynb (dead)

 

MVSEP-MDX23 v2.3

https://colab.research.google.com/github/jarredou/MVSEP-MDX23-Colab_v2/blob/v2.3/MVSep-MDX23-Colab.ipynb (dead)

 

Not sure if all of these older versions has the following fix for slow separations:

!python -m pip -q install onnxruntime-gpu --extra-index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/onnxruntime-cuda-12/pypi/simple/

 

 

jazzpear's soon to be 17-stem separation Colab (probably doesn’t work anymore)

https://colab.research.google.com/drive/1jrw-cAi-JqZpBi6wyT3YIp3x-XHhDm1W

 

 

Similarity Extractor

https://colab.research.google.com/drive/1WP5IjduTcc-RRsvfaFFIhnZadRhw-8ig

But Audacity's center extraction which can be used also online works better:

wavacity.com

There was also MDX23C model for the same purpose released:
https://github.com/ZFTurbo/Music-Source-Separation-Training/issues/1#issuecomment-2417116936

 

Useful repositories

 

Python command line fork of UVR 5 with current models support

https://github.com/karaokenerds/python-audio-separator

(it used to have the same broken overlaps from UVR for Roformers)

 

OG repo on which jarredou’s single models Colab separation is made

https://github.com/ZFTurbo/Music-Source-Separation-Training

(can be used locally both for inference [separation] and training)

 

It has other GUI too:

https://github.com/AliceNavigator/Music-Source-Separation-Training-GUI

 

Using only CPU in the GUI might be fixed by changing line 149 to

device = 'cuda'

https://github.com/AliceNavigator/Music-Source-Separation-Training-GUI/blob/66ada053a623a20865cac7b9d26a02615204d178/inference.py#L148 ~frazer

 

WebUI:

https://github.com/SUC-DriverOld/MSST-WebUI

 

Other GUI for UVR

https://github.com/TheStingerX/Ilaria-UVR

 

 

Good paid sites:

 

- dango.ai (expensive, one of the best results for instrumentals)

- moises.ai (probably in-house BS-Roformer models)

- studio.gaudiolab.io (a.k.a. GSEP, still good for specific cases)

- Music AI - better results than those on Moises (same team). $25 per month or pay as you go, pricing chart, no free trial, Good selection of models and interesting module stacking feature. To upload files instead of using URLs “you make the workflow, and you start a job from the main page using that custom workflow” by [~ D I O ~].

“Bass was a fair bit better than Demucs HT, Drums about the same. Guitars were very good though. Vocal was almost the same as my cleaned up work. (...) I'd say a little clearer than mvsep 4 ensemble. It seems to get the instrument bleed out quite well, (...) An engineer I've worked with demixed to almost the same results, it took me a few hours and achieve it [in] 39 seconds” by Sam Hocking

- Audioshake

- Myxt - 3 stem model, unfortunately, it has/had WAVs with 16kHz cutoff which Audioshake normally doesn't have. No other stem. Results, maybe slightly better than Demucs. Might be good for vocals.

 

 

Thanks to Mr. 𝐂𝐑𝐔𝐒𝐓𝐘 ᶜʳᵃᵇ for gathering lots of the links.

 

 

More online site descriptions

 

https://mvsep.com/ (FLAC, WAV 24 bit/32 bit for MDX instrumentals and Demucs, Roformers, 100MB per file limit, MP3 320kbps available, 512 window size for VR models (all UVR 5 GUI models including WiP piano [it's better than Spleeter worse than GSEP]), /wo HQ_4, big choice of various architectures and models.

Good instrumental models: MDX23C 16.66, MDX B>HQ_3, BS-Roformer 17.55

Good vocal models: MDX B>voc_ft, MDX23C 16.66 (more bleeding, better quality

Ensemble for paid users (instrumentals have fewer residues than 2.4 Jarredou Colab, but are muddier)

 

(old) In Demucs 3-UVR instrumental models - model 1 is less aggressive, model 2 is more destructive (sometimes it happens the opposite, though), the “bag” leaks even more,

also, regular 4 stem model B - mdx_extra from Demucs 3 and also HT Demucs 4 (better ft model). For UVR-MDX models choose MDX model B, and the new field will appear. Biggest queue in the evenings till around 10 PM CEST, close to none around 15:00 (working days).

 

https://x-minus.pro/ai (10 minutes daily limit for free users - it can exceed like 1 minute on the last song)

Currently, more models are available for free (like MDX and Roformer models), but some more resource hungry methods like drums max mag are behind paywall.

 

Good methods:

Models ensembled - available only for premium users:

- demudder (used on Mel-Roformer)

- Mel-Roformer + MDX23C

- drums ensemble max_mag with Roformer

 

(old) Previously for free users only one UVR model without parameters for "lo-fi" option was available (unreleased model, mp3, 17kHz cutoff) and Demucs 3 (2 stem) (or 6 stems?) for registered users (site by of the authors) and Demucs 4 (4 stem) for premium users (and its better htdemucs_ft model for songs shorter than 5 minutes [better equivalent of previous demucs_extra model which wasn't quantized) and 7-8 minutes in the future (not sure if it also got replaced by 6s model for premium users as well).

Besides WAV, paid users get exclusive unreleased VR model when aggressiveness is set to minimum.

As the site development dynamically progresses, some info above can be outdated.