Realtime-Attack-Map
SURICATA / LIVE FEED

Von Text zu Heavy Metal: Neues Modell

YuE2 macht aus Lyrics und einem Notenplan einen Metal-Track.

Von Text zu Heavy Metal: Neues Modell

YuE2 erzeugt aus einem Stil-Prompt und Songtext Musik mit Gesang und macht dabei einen bearbeitbaren Kompositionsplan zugänglich. Für meinen Test habe ich die Dark-Metal-Vorgaben aus dem bisherigen Text-to-Heavy-Metal-Workflow aufgegriffen und in ComfyUI eingesetzt. Anhand des Workflows lässt sich nachvollziehen, wie aus Lyrics zunächst eine musikalische Struktur und anschließend eine Audiodatei wird.

From Text to Heavy Metal: An Open Source Workflow
Forget subscriptions. Run a complete AI music studio on your own hardware with this guide.
audio-thumbnail
caught between faith and consequence
0:00
/234.6

Inhaltsverzeichnis

    Vom Metal-Prompt zum bearbeitbaren Notenplan

    Im bisherigen Versuch wurden Lyrics mit Ollama und Qwen3 vorbereitet und anschließend durch ACE-Step 1.5 vertont. Für den neuen Versuch bleibt die kreative Ausgangsidee erhalten: ein dunkler Metal-Track mit schweren, tief gestimmten Gitarren. Gewechselt wird das Werkzeug zur Komposition und Klangerzeugung.

    Bei YuE2 kann vor der Audioerzeugung ein Plan in ABC-Notation entstehen. Das ist eine textuelle Darstellung musikalischer Informationen. Melodien und Akkorde werden damit sichtbar und bearbeitbar, bevor sie als Aufnahme vorliegen. Ein solcher Plan ähnelt dem Notenzettel einer Band: Er hält musikalische Vorgaben fest, beschreibt aber nicht jedes Detail von Gitarrensound, Stimme und Produktion. Dabei sind die erzielten Ergebnisse bereits besser als bei Suno:

    Technisch wird die Arbeit in mehrere Schritte aufgeteilt. Nach der symbolischen Planung werden semantische Musik-Tokens erzeugt. Daraus entstehen akustische Latents, also komprimierte interne Audiodaten, die ein VAE-Decoder in hörbares Audio umwandelt. Diese Stufen werden in der Projektbeschreibung erläutert; die Ausgabe ist Stereo-Audio mit 48 kHz.

    Der untersuchte ComfyUI-Workflow yue2_full.json bildet diesen Ablauf ab:

    Style + Lyrics
      -> YuE2GenerateABC
      -> Preview (Hier kann man in den Song eingreifen)
      -> YuE2GenerateMusic
      -> KSampler
      -> VAEDecodeAudioTiled
      -> PreviewAudio

    Andere Musikrichtungen

    Bevor ich diesen Artikel auf einen einzigen Stil reduziere: Natürlich kann YuE2 deutlich mehr als nur Metal. Hier zur Einstimmung auf den nahenden Herbst ein Song, den Qwen3.8:27b selbst vertexten durfte:

    audio-thumbnail
    Herbst
    0:00
    /249.96

    ComfyUI unter Linux vorbereiten

    Die folgenden Installationsbefehle sind für eine neue Installation unter Ubuntu 24.04 mit Python 3.12 und einer NVIDIA-GPU mit passendem aktuellem Treiber gedacht. Die Treiberinstallation muss bereits abgeschlossen sein; nvidia-smi muss die Karte erkennen. Für andere GPU-Plattformen enthält die offizielle Installationsanleitung eigene PyTorch-Pakete.

    Aus einem beschreibbaren Arbeitsverzeichnis wird die Installation angelegt:

    # M. Meister - ComfyUI mit NVIDIA-Unterstützung
    sudo apt update
    sudo apt install -y git python3.12-venv python3-pip curl
    nvidia-smi
    
    git clone https://github.com/Comfy-Org/ComfyUI.git
    cd ComfyUI
    python3.12 -m venv .venv
    source .venv/bin/activate
    python -m pip install --upgrade pip
    python -m pip install torch torchvision torchaudio \
      --extra-index-url https://download.pytorch.org/whl/cu130
    python -m pip install -r requirements.txt
    python -c 'import torch; print("CUDA verfügbar:", torch.cuda.is_available()); print("PyTorch:", torch.__version__)'
    python main.py
    

    Die CUDA-Paketquelle entspricht der zum Recherchezeitpunkt dokumentierten NVIDIA-Installation von ComfyUI. Bei funktionierender GPU-Anbindung muss die Prüfung CUDA verfügbar: True ausgeben. Die Oberfläche wird anschließend im Browser unter http://127.0.0.1:8188 geöffnet.

    Für eine bestehende Git-Installation wird ComfyUI zunächst beendet. Nach Sicherung eigener Änderungen werden im Installationsverzeichnis die vorhandene Python-Umgebung aktiviert, git pull --ff-only und python -m pip install -r requirements.txt ausgeführt. Danach wird ComfyUI neu gestartet. Unter Windows Portable liegt das entsprechende Update-Skript unter update\update_comfyui.bat.

    Die hier verwendeten YuE2-Nodes gehören inzwischen zu ComfyUI selbst. Für diesen Graphen wird deshalb kein zusätzliches YuE2-Custom-Node-Paket benötigt.

    Modelle auswählen und richtig ablegen

    Für den Test wurden die aufbereiteten Modelle von Comfy-Org/YuE2 verwendet. Für Text-to-Music genügt einer der beiden Checkpoints. Der zusätzliche SheetSage2-Encoder wird erst benötigt, wenn eine bestehende Aufnahme als Referenz dienen soll.

    DateiDownloadgröße ungefährZielverzeichnis innerhalb von ComfyUI
    yue2_3b_bf16.safetensors7,8 GBmodels/checkpoints/
    yue2_3b_int8_convrot.safetensors3,96 GBmodels/checkpoints/
    sheetsage2_bf16.safetensors1,39 GBmodels/audio_encoders/

    Die Größen stammen aus den Verzeichnissen für Checkpoints und Audio-Encoder. BF16 speichert Modellwerte mit höherer numerischer Präzision als die INT8-Variante. Die kleinere Datei ist für speicherbegrenzte Versuche interessant, ihre Downloadgröße entspricht aber nicht dem gesamten VRAM-Bedarf während der Berechnung.

    Für den INT8-Einstieg können die Dateien im ComfyUI-Verzeichnis mit folgendem Skript heruntergeladen werden. Der Encoder wird dabei bereits für spätere Cover-Versuche mitgeladen:

    # M. Meister - YuE2-Modelle für ComfyUI
    test -f main.py || { echo 'Im ComfyUI-Verzeichnis ausführen.' >&2; exit 1; }
    mkdir -p models/checkpoints models/audio_encoders
    model_base='https://huggingface.co/Comfy-Org/YuE2/resolve/main'
    
    curl --fail --location --retry 3 --continue-at - \
      --output models/checkpoints/yue2_3b_int8_convrot.safetensors \
      "$model_base/checkpoints/yue2_3b_int8_convrot.safetensors"
    curl --fail --location --retry 3 --continue-at - \
      --output models/audio_encoders/sheetsage2_bf16.safetensors \
      "$model_base/audio_encoders/sheetsage2_bf16.safetensors"
    

    Nach dem Download wird ComfyUI neu gestartet und im CheckpointLoaderSimple die tatsächlich vorhandene Datei ausgewählt. Hier liegt eine konkrete Stolperfalle: yue2_full.json erwartet noch yue2_convrot_int8.safetensors. Die Auswahl muss auf yue2_3b_int8_convrot.safetensors geändert werden. Ein fehlender alter Dateiname bedeutet nicht, dass der neue Download defekt ist.

    Den Workflow mit den Metal-Vorgaben füllen

    yue2_full.json wird per Drag-and-drop in die ComfyUI-Oberfläche geladen. Alternativ stehen im offiziellen Template-Verzeichnis aktuelle Text-to-Music-Vorlagen bereit. Deren Aufbau und Standardwerte können von den hier besprochenen Node-IDs abweichen.

    In der untersuchten Datei stehen zunächst ein J-Pop-Prompt und wiederholte Beispielzeilen. Sie werden in den beiden zentralen Nodes style mit ID 12 und lyrics mit ID 13 ersetzt. Beide sind mit der ABC-Planung und der nachfolgenden Musikgenerierung verbunden. Damit erhalten beide Stufen dieselben Vorgaben.

    Mein verwendeter Stil-Prompt lautet, wie auch in meinem damaligen Test:

    dark metal track blending heavy, down-tuned guitar.
    

    Dazu wurde der folgende Songtext eingesetzt. Der Abschnitt für das Gitarrensolo ergänzt die frühere Fassung:

    [Intro]
    Shadows breathe beneath the skyline,
    rusted hearts begin to hum.
    In the silence of the distance,
    every scar becomes a drum.
    
    [Verse 1]
    I walk through hours made of glass,
    reflections whisper old confessions.
    The ground is cold, the night is vast,
    each step repeats my obsessions.
    
    [Pre-Chorus]
    The air burns slow,
    as time corrodes my bones.
    
    [Chorus]
    I am the storm that never ends,
    I am the wound that never heals.
    Caught between faith and consequence,
    this cage of thought I cannot feel.
    
    [Verse 2]
    Faces fade behind my eyes,
    truth dissolves in static rain.
    I drown within the lullabies
    that promise comfort, then bring pain.
    
    [Long-Energetic-Guitar-Solo]
    
    [Bridge]
    A voice inside the void calls back my name,
    a prayer, a curse - they sound the same.
    
    [Final Chorus]
    I am the storm that never ends,
    I am the wound that never heals.
    My shadow screams where daylight bends,
    and silence teaches what is real.
    
    [Outro]
    Fade into grey,
    where even memory decays.
    

    Die Generierungsanleitung sieht getrennte Felder für Stil und Lyrics sowie Abschnittsmarkierungen wie [Verse] und [Chorus] vor. Der ausführliche Solo-Tag aus dem Test bleibt hier erhalten, ist aber kein dokumentierter Spezialbefehl mit zugesicherter Wirkung. Ob daraus tatsächlich ein langes Solo entsteht, muss am Ergebnis geprüft werden. Für weitere Versuche lässt sich der Wunsch zusätzlich im Stilfeld beschreiben, etwa mit extended energetic guitar solo.

    audio-thumbnail
    Faith And Consequence
    0:00
    /289.84

    Die gespeicherten Einstellungen verstehen

    Die folgende Tabelle enthält die Werte des vorliegenden Graphen. Sie dokumentiert seine Ausgangskonfiguration, nicht gemessene optimale Einstellungen für jede Hardware.

    NodeParameterGespeicherter Wert
    YuE2GenerateABC, ID 23seed, Steuerung10, fixed
    YuE2GenerateABCmode, max_abc_tokensfull, 8192
    YuE2GenerateMusic, ID 22seed, Steuerung17, fixed
    YuE2GenerateMusicmode, max_durationfull, 360
    YuE2GenerateMusictemperature, top_p, top_k1, 0.95, 100
    YuE2GenerateMusicrepetition_penalty1.2
    KSampler, ID 8seed, Steuerung7, fixed
    KSamplersteps, cfg, denoise32, 1, 1
    KSamplerSampler, Schedulerdpm_2, sgm_uniform
    VAEDecodeAudioTiled, ID 17tile_size, overlap1920, 128
    SaveAudioAdvanced, ID 10Präfix, Formataudio/YuE2, flac

    full steht für die Planung von Melodie und Akkorden. Die Begrenzung max_abc_tokens betrifft die Textlänge der Notation, nicht unmittelbar die Spieldauer. max_duration=360 setzt dagegen eine Obergrenze von sechs Minuten; die Generierung darf vorher enden. Diese Unterscheidung ist in der Node-Implementierung ausdrücklich angelegt.YuE2 erzeugt aus einem Stil-Prompt und Songtext Musik mit Gesang und macht dabei einen bearbeitbaren Kompositionsplan zugänglich. Für meinen Test habe ich die Dark-Metal-Vorgaben aus dem bisherigen Text-to-Heavy-Metal-Workflow aufgegriffen und in ComfyUI eingesetzt. Anhand des Workflows lässt sich nachvollziehen, wie aus Lyrics zunächst eine musikalische Struktur und anschließend eine Audiodatei wird.
    From Text to Heavy Metal: An Open Source Workflow
    Forget subscriptions. Run a complete AI music studio on your own hardware with this guide.
    https://blog.meister-security.de/from-text-to-heavy-metal-an-open-source-workflow/

    Inhaltsverzeichnis

      Embedded JavaScript

      Vom Metal-Prompt zum bearbeitbaren Notenplan
      Im bisherigen Versuch wurden Lyrics mit Ollama und Qwen3 vorbereitet und anschließend durch ACE-Step 1.5 vertont. Für den neuen Versuch bleibt die kreative Ausgangsidee erhalten: ein dunkler Metal-Track mit schweren, tief gestimmten Gitarren. Gewechselt wird das Werkzeug zur Komposition und Klangerzeugung.
      Bei YuE2 kann vor der Audioerzeugung ein Plan in ABC-Notation entstehen. Das ist eine textuelle Darstellung musikalischer Informationen. Melodien und Akkorde werden damit sichtbar und bearbeitbar, bevor sie als Aufnahme vorliegen. Ein solcher Plan ähnelt dem Notenzettel einer Band: Er hält musikalische Vorgaben fest, beschreibt aber nicht jedes Detail von Gitarrensound, Stimme und Produktion.
      Technisch wird die Arbeit in mehrere Schritte aufgeteilt. Nach der symbolischen Planung werden semantische Musik-Tokens erzeugt. Daraus entstehen akustische Latents, also komprimierte interne Audiodaten, die ein VAE-Decoder in hörbares Audio umwandelt. Diese Stufen werden in der Projektbeschreibung erläutert; die Ausgabe ist Stereo-Audio mit 48 kHz.
      Der untersuchte ComfyUI-Workflow yue2_full.json bildet diesen Ablauf ab:Style + Lyrics
      -> YuE2GenerateABC
      -> PreviewAny
      -> YuE2GenerateMusic
      -> KSampler
      -> VAEDecodeAudioTiled
      -> SaveAudioAdvanced

      Zusätzlich versorgt EmptyYuE2LatentAudio den Sampler mit dem benötigten Latent. Seine Länge wird vom seconds-Ausgang von YuE2GenerateMusic übernommen. Der im leeren Latent gespeicherte Wert von 120 Sekunden bestimmt deshalb in dieser Verdrahtung nicht die Songlänge.
      Andere Musikrichtungen
      Bevor ich diesen Artikel auf einen einzigen Stil reduziere: Natürlich kann YuE2 deutlich mehr als nur Metal. Hier zur Einstimmung auf den nahenden Herbst ein Song, den Qwen3.8:27b selbst vertexten durfte:
      ComfyUI unter Linux vorbereiten
      Die folgenden Installationsbefehle sind für eine neue Installation unter Ubuntu 24.04 mit Python 3.12 und einer NVIDIA-GPU mit passendem aktuellem Treiber gedacht. Die Treiberinstallation muss bereits abgeschlossen sein; nvidia-smi muss die Karte erkennen. Für andere GPU-Plattformen enthält die offizielle Installationsanleitung eigene PyTorch-Pakete.
      Aus einem beschreibbaren Arbeitsverzeichnis wird die Installation angelegt:# M. Meister - ComfyUI mit NVIDIA-Unterstützung
      sudo apt update
      sudo apt install -y git python3.12-venv python3-pip curl
      nvidia-smi

      git clone https://github.com/Comfy-Org/ComfyUI.git
      cd ComfyUI
      python3.12 -m venv .venv
      source .venv/bin/activate
      python -m pip install --upgrade pip
      python -m pip install torch torchvision torchaudio
      --extra-index-url https://download.pytorch.org/whl/cu130
      python -m pip install -r requirements.txt
      python -c 'import torch; print("CUDA verfügbar:", torch.cuda.is_available()); print("PyTorch:", torch.version)'
      python main.py

      Die CUDA-Paketquelle entspricht der zum Recherchezeitpunkt dokumentierten NVIDIA-Installation von ComfyUI. Bei funktionierender GPU-Anbindung muss die Prüfung CUDA verfügbar: True ausgeben. Die Oberfläche wird anschließend im Browser unter http://127.0.0.1:8188 geöffnet.
      Für eine bestehende Git-Installation wird ComfyUI zunächst beendet. Nach Sicherung eigener Änderungen werden im Installationsverzeichnis die vorhandene Python-Umgebung aktiviert, git pull --ff-only und python -m pip install -r requirements.txt ausgeführt. Danach wird ComfyUI neu gestartet. Unter Windows Portable liegt das entsprechende Update-Skript unter update\update_comfyui.bat.
      Die hier verwendeten YuE2-Nodes gehören inzwischen zu ComfyUI selbst. Für diesen Graphen wird deshalb kein zusätzliches YuE2-Custom-Node-Paket benötigt.
      Modelle auswählen und richtig ablegen
      Für den Test wurden die aufbereiteten Modelle von Comfy-Org/YuE2 verwendet. Für Text-to-Music genügt einer der beiden Checkpoints. Der zusätzliche SheetSage2-Encoder wird erst benötigt, wenn eine bestehende Aufnahme als Referenz dienen soll.

      DateiDownloadgröße ungefährZielverzeichnis innerhalb von ComfyUI
      yue2_3b_bf16.safetensors7,8 GBmodels/checkpoints/
      yue2_3b_int8_convrot.safetensors3,96 GBmodels/checkpoints/
      sheetsage2_bf16.safetensors1,39 GBmodels/audio_encoders/

      Die Größen stammen aus den Verzeichnissen für Checkpoints und Audio-Encoder. BF16 speichert Modellwerte mit höherer numerischer Präzision als die INT8-Variante. Die kleinere Datei ist für speicherbegrenzte Versuche interessant, ihre Downloadgröße entspricht aber nicht dem gesamten VRAM-Bedarf während der Berechnung.
      Für den INT8-Einstieg können die Dateien im ComfyUI-Verzeichnis mit folgendem Skript heruntergeladen werden. Der Encoder wird dabei bereits für spätere Cover-Versuche mitgeladen:# M. Meister - YuE2-Modelle für ComfyUI
      test -f main.py || { echo 'Im ComfyUI-Verzeichnis ausführen.' >&2; exit 1; }
      mkdir -p models/checkpoints models/audio_encoders
      model_base='https://huggingface.co/Comfy-Org/YuE2/resolve/main'

      curl --fail --location --retry 3 --continue-at -
      --output models/checkpoints/yue2_3b_int8_convrot.safetensors
      "$model_base/checkpoints/yue2_3b_int8_convrot.safetensors"
      curl --fail --location --retry 3 --continue-at -
      --output models/audio_encoders/sheetsage2_bf16.safetensors
      "$model_base/audio_encoders/sheetsage2_bf16.safetensors"

      Nach dem Download wird ComfyUI neu gestartet und im CheckpointLoaderSimple die tatsächlich vorhandene Datei ausgewählt. Hier liegt eine konkrete Stolperfalle: yue2_full.json erwartet noch yue2_convrot_int8.safetensors. Die Auswahl muss auf yue2_3b_int8_convrot.safetensors geändert werden. Ein fehlender alter Dateiname bedeutet nicht, dass der neue Download defekt ist.
      Den Workflow mit den Metal-Vorgaben füllen
      yue2_full.json wird per Drag-and-drop in die ComfyUI-Oberfläche geladen. Alternativ stehen im offiziellen Template-Verzeichnis aktuelle Text-to-Music-Vorlagen bereit. Deren Aufbau und Standardwerte können von den hier besprochenen Node-IDs abweichen.
      In der untersuchten Datei stehen zunächst ein J-Pop-Prompt und wiederholte Beispielzeilen. Sie werden in den beiden zentralen Nodes style mit ID 12 und lyrics mit ID 13 ersetzt. Beide sind mit der ABC-Planung und der nachfolgenden Musikgenerierung verbunden. Damit erhalten beide Stufen dieselben Vorgaben.
      Mein verwendeter Stil-Prompt lautet, wie auch in meinem damaligen Test:dark metal track blending heavy, down-tuned guitar.

      Dazu wurde der folgende Songtext eingesetzt. Der Abschnitt für das Gitarrensolo ergänzt die frühere Fassung:[Intro]
      Shadows breathe beneath the skyline,
      rusted hearts begin to hum.
      In the silence of the distance,
      every scar becomes a drum.

      [Verse 1]
      I walk through hours made of glass,
      reflections whisper old confessions.
      The ground is cold, the night is vast,
      each step repeats my obsessions.

      [Pre-Chorus]
      The air burns slow,
      as time corrodes my bones.

      [Chorus]
      I am the storm that never ends,
      I am the wound that never heals.
      Caught between faith and consequence,
      this cage of thought I cannot feel.

      [Verse 2]
      Faces fade behind my eyes,
      truth dissolves in static rain.
      I drown within the lullabies
      that promise comfort, then bring pain.

      [Long-Energetic-Guitar-Solo]

      [Bridge]
      A voice inside the void calls back my name,
      a prayer, a curse - they sound the same.

      [Final Chorus]
      I am the storm that never ends,
      I am the wound that never heals.
      My shadow screams where daylight bends,
      and silence teaches what is real.

      [Outro]
      Fade into grey,
      where even memory decays.

      Die Generierungsanleitung sieht getrennte Felder für Stil und Lyrics sowie Abschnittsmarkierungen wie [Verse] und [Chorus] vor. Der ausführliche Solo-Tag aus dem Test bleibt hier erhalten, ist aber kein dokumentierter Spezialbefehl mit zugesicherter Wirkung. Ob daraus tatsächlich ein langes Solo entsteht, muss am Ergebnis geprüft werden. Für weitere Versuche lässt sich der Wunsch zusätzlich im Stilfeld beschreiben, etwa mit extended energetic guitar solo.
      Die gespeicherten Einstellungen verstehen
      Die folgende Tabelle enthält die Werte des vorliegenden Graphen. Sie dokumentiert seine Ausgangskonfiguration, nicht gemessene optimale Einstellungen für jede Hardware.

      NodeParameterGespeicherter Wert
      YuE2GenerateABC, ID 23seed, Steuerung10, fixed
      YuE2GenerateABCmode, max_abc_tokensfull, 8192
      YuE2GenerateMusic, ID 22seed, Steuerung17, fixed
      YuE2GenerateMusicmode, max_durationfull, 360
      YuE2GenerateMusictemperature, top_p, top_k1, 0.95, 100
      YuE2GenerateMusicrepetition_penalty1.2
      KSampler, ID 8seed, Steuerung7, fixed
      KSamplersteps, cfg, denoise32, 1, 1
      KSamplerSampler, Schedulerdpm_2, sgm_uniform
      VAEDecodeAudioTiled, ID 17tile_size, overlap1920, 128
      SaveAudioAdvanced, ID 10Präfix, Formataudio/YuE2, flac

      full steht für die Planung von Melodie und Akkorden. Die Begrenzung max_abc_tokens betrifft die Textlänge der Notation, nicht unmittelbar die Spieldauer. max_duration=360 setzt dagegen eine Obergrenze von sechs Minuten; die Generierung darf vorher enden. Diese Unterscheidung ist in der Node-Implementierung ausdrücklich angelegt.
      Bei den drei Seeds wird jeweils der Zufallsstart einer anderen Stufe festgelegt. Eine Änderung des ABC-Seeds kann bereits die Komposition verändern. Der Musik-Seed wirkt auf die anschließende Token-Generierung, der KSampler-Seed auf die akustische Synthese. Für Vergleichsläufe bleiben zunächst alle drei Werte fest, während jeweils nur eine andere Einstellung verändert wird. Für eine neue Komposition kann mit dem ABC-Seed begonnen werden.
      Für spätere Wiederholungen sollten Workflow, Checkpoint-Datei, ComfyUI-Version, Abhängigkeiten und erzeugter ABC-Text zusammen aufbewahrt werden. Ein fester Seed allein garantiert keine bitidentische Ausgabe über verschiedene Softwarestände und Geräte hinweg.
      Der KSampler-CFG ist hier kein verlässlicher Regler für Texttreue. Im Graphen wird derselbe Conditioning-Ausgang von ID 22 sowohl an positive als auch an negative angeschlossen. Es fehlt damit die unterschiedliche Bedingung, aus der gewöhnliche Classifier-free Guidance ihre Richtung ableitet. Neuere Versionen von YuE2GenerateMusic bieten zusätzlich einen eigenen cfg_scale für die autoregressive Textführung; dieser ist vom KSampler-Wert zu unterscheiden. Für den ersten Lauf bleiben die gespeicherten Werte unverändert.
      Auch 32 Sampling-Schritte sind zunächst eine Ausgangseinstellung. Eine Erhöhung bedeutet zusätzliche Berechnung, aber keine zugesicherte Verbesserung von Gesang, Textverständlichkeit oder Arrangement.
      Eine vorhandene Aufnahme als Cover neu arrangieren
      Der untere Workflow-Zweig ersetzt den selbst erzeugten Notenplan durch eine Transkription. Die Nodes mit den IDs 18 bis 21 sind in der JSON-Datei auf Bypass gesetzt.
      Dabei handelt es sich um AudioEncoderLoader, SheetSage2AudioToABC, LoadAudio und eine zweite Vorschau.
      Für einen Cover-Versuch wird dieser Zweig wie folgt eingebunden:
      Die vier Nodes werden aktiviert. In AudioEncoderLoader wird sheetsage2_bf16.safetensors ausgewählt.
      In LoadAudio wird eine vorhandene Audiodatei hochgeladen. Der gespeicherte Name test_ref.wav ist nur eine Referenz; die Datei ist nicht im JSON enthalten.
      In SheetSage2AudioToABC wird melody eingestellt.
      Der abc-Ausgang dieses Nodes wird direkt mit dem abc-Eingang von YuE2GenerateMusic verbunden. Damit wird die bisherige Verbindung aus der oberen Vorschau ersetzt. Die untere Vorschau kann parallel angeschlossen bleiben.
      Auch YuE2GenerateMusic wird auf melody gesetzt. Der obere ABC-Generator wird für diesen Lauf nicht mehr benötigt.
      Stil und Lyrics werden in den zentralen Text-Nodes angepasst, anschließend wird der Workflow ausgeführt.
      Die SheetSage2-Integration verlangt einen zur Transkription passenden Modus bei der Musikgenerierung. Im Modus melody wird die Begleitung freier gestaltet; bei full werden auch Akkordinformationen berücksichtigt.
      Wie die Cover-Anleitung beschreibt, sollte die transkribierte Melodie vor dem Rendern überprüft werden. Fehler können in die neue Fassung übernommen werden. Neue Lyrics müssen außerdem zur Phrasierung passen; bei Übersetzungen ist die Silbenzahl relevant. Ein längerer deutscher Satz passt nicht automatisch auf dieselben Noten wie eine kurze englische Zeile.
      Ich fand es sehr nützlich, dass zuerst ein ABC-Sheet erstellt wird, so hat man noch bevor der Song neu erstellt wird bereits ein Leadsheet, das man auch selbst nutzen kann:
      Kompositionen gezielt überarbeiten
      Eine interessante Anwendung des ABC-Zwischenschritts ist die Überarbeitung einer vorhandenen Komposition. Der Text aus der Vorschau kann gesichert, bearbeitet und danach direkt im abc-Feld von YuE2GenerateMusic eingesetzt werden. Dazu wird dessen bisherige ABC-Eingangsverbindung entfernt. Der Modus muss zur bearbeiteten Notation passen.
      Für musikalische Änderungen sind beispielsweise Akkorde, Melodieverlauf oder Tempo Ansatzpunkte. Dabei muss die von YuE2 erwartete ABC-Struktur erhalten bleiben; beliebige ABC-Dateien sind nicht automatisch kompatibel. Auch ein Agent kann solche Änderungen vorbereiten, benötigt dafür aber musikalische Vorgaben und eine anschließende Kontrolle.
      Bei dieser Bearbeitung wird eine neue vollständige Aufnahme erzeugt. Unveränderte Bereiche bleiben daher nicht zwangsläufig akustisch identisch. Für das präzise Austauschen einzelner Stellen in einer bestehenden Aufnahme ist dieser Workflow allein kein Ersatz für einen Audioeditor.
      Die grundsätzliche Automatisierung von ComfyUI ist im Blog unter ComfyUI per API steuern beschrieben. Die hier vorliegende Datei enthält jedoch keine Agent-Anbindung.Vom Klick zum Script: ComfyUI per API steuern
      Von der visuellen Workflow-Erstellung in ComfyUI bis zur automatisierten Mediengenerierung per API
      https://blog.meister-security.de/vom-klick-zum-script-comfyui-per-api-steuern/

      Fun-Factor
      Ich hatte wirklich viel Spaß damit, Songs zu erstellen. Eigentlich schreibe ich ja hauptsächlich über securityrelevante Themen. So konnte ich es mir nicht nehmen lassen, Qwen3.8 meine Wazuh-Logs in eine Komposition umwandeln zu lassen:
      Fazit
      YuE2 macht die musikalische Planung als bearbeitbaren Zwischenschritt zugänglich und bietet damit einen konkreten Ansatz für neue Songs, Cover und Variationen. Der Dark-Metal-Versuch lässt sich mit den dokumentierten Texten und Workflow-Einstellungen nachbauen, sofern Modellname, Node-Verbindungen und verfügbarer Speicher zusammenpassen. Für die Bewertung zählen anschließend die hörbare Umsetzung und die geltenden Nutzungsbedingungen ebenso wie die Möglichkeiten des Modells.

      Bei den drei Seeds wird jeweils der Zufallsstart einer anderen Stufe festgelegt. Eine Änderung des ABC-Seeds kann bereits die Komposition verändern. Der Musik-Seed wirkt auf die anschließende Token-Generierung, der KSampler-Seed auf die akustische Synthese. Für Vergleichsläufe bleiben zunächst alle drei Werte fest, während jeweils nur eine andere Einstellung verändert wird. Für eine neue Komposition kann mit dem ABC-Seed begonnen werden.

      Für spätere Wiederholungen sollten Workflow, Checkpoint-Datei, ComfyUI-Version, Abhängigkeiten und erzeugter ABC-Text zusammen aufbewahrt werden. Ein fester Seed allein garantiert keine bitidentische Ausgabe über verschiedene Softwarestände und Geräte hinweg.

      Der KSampler-CFG ist hier kein verlässlicher Regler für Texttreue. Im Graphen wird derselbe Conditioning-Ausgang von ID 22 sowohl an positive als auch an negative angeschlossen. Es fehlt damit die unterschiedliche Bedingung, aus der gewöhnliche Classifier-free Guidance ihre Richtung ableitet. Neuere Versionen von YuE2GenerateMusic bieten zusätzlich einen eigenen cfg_scale für die autoregressive Textführung; dieser ist vom KSampler-Wert zu unterscheiden. Für den ersten Lauf bleiben die gespeicherten Werte unverändert.

      Auch 32 Sampling-Schritte sind zunächst eine Ausgangseinstellung. Eine Erhöhung bedeutet zusätzliche Berechnung, aber keine zugesicherte Verbesserung von Gesang, Textverständlichkeit oder Arrangement.

      Eine vorhandene Aufnahme als Cover neu arrangieren

      Der untere Workflow-Zweig ersetzt den selbst erzeugten Notenplan durch eine Transkription. Die Nodes mit den IDs 18 bis 21 sind in der JSON-Datei auf Bypass gesetzt.

      Dabei handelt es sich um AudioEncoderLoaderSheetSage2AudioToABCLoadAudio und eine zweite Vorschau.

      Für einen Cover-Versuch wird dieser Zweig wie folgt eingebunden:

      1. Die vier Nodes werden aktiviert. In AudioEncoderLoader wird sheetsage2_bf16.safetensors ausgewählt.
      2. In LoadAudio wird eine vorhandene Audiodatei hochgeladen. Der gespeicherte Name test_ref.wav ist nur eine Referenz; die Datei ist nicht im JSON enthalten.
      3. In SheetSage2AudioToABC wird melody eingestellt.
      4. Der abc-Ausgang dieses Nodes wird direkt mit dem abc-Eingang von YuE2GenerateMusic verbunden. Damit wird die bisherige Verbindung aus der oberen Vorschau ersetzt. Die untere Vorschau kann parallel angeschlossen bleiben.
      5. Auch YuE2GenerateMusic wird auf melody gesetzt. Der obere ABC-Generator wird für diesen Lauf nicht mehr benötigt.
      6. Stil und Lyrics werden in den zentralen Text-Nodes angepasst, anschließend wird der Workflow ausgeführt.

      Die SheetSage2-Integration verlangt einen zur Transkription passenden Modus bei der Musikgenerierung. Im Modus melody wird die Begleitung freier gestaltet; bei full werden auch Akkordinformationen berücksichtigt.

      Wie die Cover-Anleitung beschreibt, sollte die transkribierte Melodie vor dem Rendern überprüft werden. Fehler können in die neue Fassung übernommen werden. Neue Lyrics müssen außerdem zur Phrasierung passen; bei Übersetzungen ist die Silbenzahl relevant. Ein längerer deutscher Satz passt nicht automatisch auf dieselben Noten wie eine kurze englische Zeile.

      Ich fand es sehr nützlich, dass zuerst ein ABC-Sheet erstellt wird, so hat man noch bevor der Song neu erstellt wird bereits ein Leadsheet, das man auch selbst nutzen kann:

      Kompositionen gezielt überarbeiten

      Eine interessante Anwendung des ABC-Zwischenschritts ist die Überarbeitung einer vorhandenen Komposition. Der Text aus der Vorschau kann gesichert, bearbeitet und danach direkt im abc-Feld von YuE2GenerateMusic eingesetzt werden. Dazu wird dessen bisherige ABC-Eingangsverbindung entfernt. Der Modus muss zur bearbeiteten Notation passen.

      Für musikalische Änderungen sind beispielsweise Akkorde, Melodieverlauf oder Tempo Ansatzpunkte. Dabei muss die von YuE2 erwartete ABC-Struktur erhalten bleiben; beliebige ABC-Dateien sind nicht automatisch kompatibel. Auch ein Agent kann solche Änderungen vorbereiten, benötigt dafür aber musikalische Vorgaben und eine anschließende Kontrolle.

      Bei dieser Bearbeitung wird eine neue vollständige Aufnahme erzeugt. Unveränderte Bereiche bleiben daher nicht zwangsläufig akustisch identisch. Für das präzise Austauschen einzelner Stellen in einer bestehenden Aufnahme ist dieser Workflow allein kein Ersatz für einen Audioeditor.

      Die grundsätzliche Automatisierung von ComfyUI ist im Blog unter ComfyUI per API steuern beschrieben. Die hier vorliegende Datei enthält jedoch keine Agent-Anbindung.

      Vom Klick zum Script: ComfyUI per API steuern
      Von der visuellen Workflow-Erstellung in ComfyUI bis zur automatisierten Mediengenerierung per API

      Fun-Factor

      Ich hatte wirklich viel Spaß damit, Songs zu erstellen. Eigentlich schreibe ich ja hauptsächlich über securityrelevante Themen. So konnte ich es mir nicht nehmen lassen, Qwen3.8 meine automatisierte KI-Incident-Analyse in eine Komposition umwandeln zu lassen:

      audio-thumbnail
      Der Angreifer
      0:00
      /240

      Fazit

      YuE2 macht die musikalische Planung als bearbeitbaren Zwischenschritt zugänglich und bietet damit einen konkreten Ansatz für neue Songs, Cover und Variationen. Der Dark-Metal-Versuch lässt sich mit den dokumentierten Texten und Workflow-Einstellungen nachbauen, sofern Modellname, Node-Verbindungen und verfügbarer Speicher zusammenpassen. Für die Bewertung zählen anschließend die hörbare Umsetzung und die geltenden Nutzungsbedingungen ebenso wie die Möglichkeiten des Modells.