Demucs-rs - Séparez vos morceaux en stems depuis le navigateur
Séparer la voix, la batterie ou la basse d'un morceau, ça relevait du rêve d'audiophile il y a encore quelques années. Fallait installer Python, se taper Spleeter, galérer avec les dépendances CUDA... bref, un super truc de barbu. Mais ça, c'était avant, les amis !
Demucs-rs , une réécriture en Rust du modèle HTDemucs v4 de Meta, tourne maintenant directement dans votre navigateur grâce au WebGPU. Batterie, basse, voix, tout le reste..., chaque élément se retrouve ainsi isolé dans son propre fichier WAV. Et y'a rien à installer, puisque tout se passe côté client, sur votre machine.
Pour vous en servir, vous pouvez aller sur la web app , vous glissez-déposez votre fichier MP3 (ou WAV, FLAC, OGG, M4A... ça bouffe à peu près tout), et vous patientez... Le premier lancement télécharge le modèle (~84 Mo pour le standard), donc prévoyez une connexion correcte.
L'interface de la web app - vous glissez votre fichier et c'est parti
Comptez alors quelques minutes selon la durée du morceau. En sortie, vous aurez alors plusieurs fichiers WAV séparés que vous pourrez écouter, jouer en solo ou télécharger individuellement.
Les pistes séparées, prêtes à écouter ou télécharger
Trois modèles sont dispos. Le mode 4 pistes suffit dans 90% des cas. Il y a aussi le modèle 6 stems, ou plutôt htdemucs_6s, qui est pas mal pour du rock ou du jazz. Et pour les obsessionnels de la qualité, y'a le fine-tuned à 333 Mo... mais prévoyez une pause café, parce que ça va être long de fou !
Voilà, comme ça, si vous voulez faire un karaoké maison, vous virez la voix et vous gardez l'instrumental. Ou si votre truc c'est de sampler une ligne de basse d'un vieux morceau de funk ou encore pratiquer la guitare en jouant par-dessus le morceau original sans la partie guitare, c'est entièrement possible !
D'ailleurs, si vous aviez testé Spleeter avec Ableton à l'époque, c'est le même principe mais en BEAUCOUP plus simple !!
Perso, le fait que ça tourne dans le navigateur, c'est top, sans parler du fait que vos morceaux restent sur votre disque.
Maintenant, si la version navigateur vous semble un peu longue, y'a le CLI natif qui exploite Metal sur Mac et Vulkan sur Linux/Windows. Pour l'installer, clonez le repo et lancez make cli (Rust requis) :
git clone https://github.com/nikhilunni/demucs-rs
cd demucs-rs && make cli
Le binaire atterrit dans target/release/demucs, 24 Mo. Le modèle se télécharge au premier lancement.
Côté utilisation, c'est du gâteau :
demucs song.mp3 # 4 pistes dans ./stems/
demucs -s vocals chanson.mp3 # juste la voix
demucs -m htdemucs_6s -s guitar solo.flac # isoler la guitare
demucs -m htdemucs_ft morceau.mp3 # qualité max
En sortie, chaque stem est un fichier WAV. Vous virez le vocals.wav, vous gardez le reste... et tadaaa, karaoké instantané pour votre voix de casserole ! C'est carrément plus rapide qu'en WebAssembly.
Et si vous bossez dans un DAW sur macOS, y'a aussi un plugin VST3/CLAP pour faire la séparation directement dans Logic ou Reaper (sauf que bon, c'est macOS only pour l'instant, quoi).
Après sachez que sur certains passages très chargés, la voix peut baver un peu dans la piste "other" ou inversement mais pour du remix amateur ou du sampling, ça suffit largement !
D'ailleurs, j'sais pas si vous vous souvenez, mais les plugins IA d'Audacity embarquent aussi Demucs v4. Mais là avec Demucs-rs c'est natif et surtout indépendant d'Audacity.
Et bien sûr, tout est open source sous licence Apache 2.0 !
Amusez-vous bien !
