Audio & VideoGeekzeug

Spleeter: Songs in einzelne Instrument-Spuren aufteilen

Ihr wollt Euren Lieblingssong als Karaoke-Version haben? Oder den Bass bei einem Stück ausblenden und selber spielen? Deezer bietet mit Spleeter ein Open-Source-Tool, das Musikstücke ganz automatisch in mehrere Spuren zerlegt: Gesang, Bässe, Piano und Drums lassen sich separieren, der Rest landet in einer eigenen Datei. Spannend ist das auch zum Lernen von Stücken, da sich etwa eine separierte Piano-Spur deutlich einfacher nachspielen lässt.

Spleeter installieren und nutzen

Spleeter ist Open Source, das ist schon mal gut, und stammt von Deezer, die sich mit Musik auskennen sollten. Nun ist Spleeter nicht unbedingt für Otto Normalverbraucher konzipiert, von daher gibt es leider – noch – keine simple GUI oder gar Installationsroutine. Ihr müsst ein wenig tippen für Euer neues Spielzeug. Zumindest funktioniert es unter Windows und Linux.

Als Basis für Spleeter dient eine Conda-Umbegung. Conda ist ein Paket-, Abhängigkeiten- und Umgebungsmanager – soll heißen: Conda besorgt hier eigenständig jede Menge Tools und kann Umgebungen bereitstellen, was nichts weiter heißt, dass im Terminal bestimmte Variablen, Pfade, Tools und dergleichen bereitstehen. Unter Linux könnt Ihr hier zum Beispiel mit der Conda-Variante Miniconda arbeiten, unter Windows wird das vollständigere Anaconda empfohlen. Zudem benötigt Ihr git. Unter Windows ist das leider alles wieder deutlich nerviger als es sein müsste, nehmt zur Not lieber ein Subsystem-Linux.

Unter Ubuntu funktioniert es wie folgt – zunächst git installieren:

apt-get install git

Um Miniconda zu installieren, kopierte Euch den passenden Link von dessen Download-Seite, ladet es herunter und führt das Skript aus:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sh ./Miniconda3-latest-Linux-x86_64.sh

Unter Windows installiert Ihr Anaconda wie gewohnt über die EXE-Datei – anschließend startet Ihr einen eigenen Anaconda-Terminal, im Startmenü über Anaconda Prompt (Anaconda3) zu finden. Git installiert Ihr ebenso via Git for Windows.

Nach Abschluss der Installation müsst Ihr einen neuen Terminal starten oder im Terminal eine neue Session mit su NUTZERNAME, damit Miniconda bereitsteht. Installiert nun Spleeter und erstellt eine Conda-Umgebung:

git clone https://github.com/Deezer/spleeter
conda env create -f spleeter/conda/spleeter-cpu.yaml
conda activate spleeter-cpu

Im geklonten Spleeter-Verzeichnis findet Ihr auch eine Demo-MP3, so dass folgender Befehl 5 WAV-Dateien im Ordner „output“ speichert:

spleeter separate -i spleeter/audio_example.mp3 -p spleeter:4stems -o output

Wenn Ihr nur Vocals und Instrumente trennen wollt, versucht es mit 2stems.

Yeii! Nicht?

Mit der beiliegenden Demo-Datei ist das Ergebnis wirklich beeindruckend: Die Spuren sind kristallklar getrennt – ziemlich perfekt das Ganze. Allerdings klingt die Demo auch so, als wäre sie ganz für diesen Zweck produziert. Bei Versuchen mit diversen anderen MP3s war das Ergebnis hier – sehr sehr freundlich ausgedrückt – ein wenig ernüchternd. Mal hagelte es nur Fehlermeldungen, mal gab es Teilergebnisse und was ausgegeben wurde war auch längst nicht so perfekt wie beim Demostück.

Dennoch ist Spleeter ein wunderbares Stück Software, das im Laufe der Zeit noch besser werden dürfte, schließlich lernen heutzutage ja auch Programme ständig dazu ;)

Übrigens: Spleeter läuft ja auf der Kommandozeile – wenn Ihr dort mal ordentliche Hilfe braucht, schaut mal bei unserem cli.help-Projekt vorbei.

Titelbild

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help und VoltAmpereWatt.de. Neu: Mastodon

4 Kommentare

  1. Funktioniert natürlich nicht wie beschrieben. Die Pfade haben sich geändert – die Installation ist so nicht möglich. Der Schreiberling sollte dies mal aktualisieren.

    1. Tja, ein kleiner Hinweis, welche Pfade sich geändert haben oder welches Betriebssystem betroffen ist oder welche Fehlermeldung es gab oder IRGENDEIN Hinweis – und schon hätte der Schreiberling gerne geholfen. Aber konstruktives Meckern scheint ziemlich unbeliebt. Oder soll ich wirklich alle Artikel hier aktuell halten? Hmmm, allein auf Tuto stehen rund 1.000 Artikel von mir, das würde dann leider zu einem unbezhahlten Fulltime-Job … Ich bin ein großer Fan des Meckerns, aber bitte mit dem Hirn, nicht mit dem Bauch ;)

      Aber ich kann ja mal ins Blaue raten, so funktioniert es unter Ubuntu:

      wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
      sh ./Miniconda3-latest-Linux-x86_64.sh
      su DEIN-NUTZERNAME
      conda install -c conda-forge ffmpeg libsndfile
      pip install spleeter
      wget https://github.com/deezer/spleeter/raw/master/audio_example.mp3
      spleeter separate -p spleeter:2stems -o output audio_example.mp3
      

      Und vorsorglich: Ja, wenn wieder ein paar Jahre ins Land gegangen sind, könnte das so vielleicht nicht mehr funzen …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Schaltfläche "Zurück zum Anfang"
Schließen

Ooopsi!

Bitte deaktiviere Deinen Adblocker.