MelBandRoFormer Audio Separation

This ComfyUI workflow performs high-quality voice isolation using the MelBandRoFormer model. It takes a single mixed audio track and separates it into two stems: isolated vocals and instrumental accompaniment. The pipeline starts with LoadAudio to ingest your source file, then MelBandRoFormerModelLoader loads the pretrained weights (MelBandRoformer_fp16.safetensors) from models/diffusion_models. The core separation happens in MelBandRoFormerSampler, which runs inference and outputs two audio tensors—one for vocals and one for background music—ready for export via paired SaveAudioMP3 nodes.

Technically, MelBandRoFormer applies a transformer-based architecture that operates in band-split, time–frequency space to estimate source components. In practice, that means it learns masks that suppress accompaniment when extracting vocals and vice versa, yielding cleaner stems with fewer musical artifacts. The included MarkdownNote provides inline guidance inside the canvas. Because the workflow is node-driven, you can easily swap SaveAudioMP3 for a WAV saver, change output filenames, or tweak Sampler options like chunking/overlap (if exposed by your node version) to balance speed, memory use, and separation quality.

API

Use this workflow from code

Every Comfy workflow is a JSON graph. The payload below is this workflow, exactly as ComfyUI runs it — fetch it from the URL, keep it in version control, or load it in ComfyUI and run it node by node.

audio_melbandroformer_audio_separation.json
Fetching workflow JSON…

Run it from TypeScript or Python with the Comfy SDK. The same code targets Comfy Cloud or a ComfyUI you host yourself — only the base URL changes.

// Install (beta)
npm i @comfyorg/sdk

// Run "MelBandRoFormer Audio Separation" (TypeScript)
import { Comfy } from "@comfyorg/sdk";

const client = new Comfy({ apiKey: "comfyui-..." });

// This workflow, exported in API format (see note below)
const wf = await client.workflows.fromFile("audio_melbandroformer_audio_separation_api.json");

const job = await client.run(wf);
await job.getOutputs("4")[0].toFile("output.png"); // SaveAudioMP3

The SDK takes a workflow in API format: open this workflow in ComfyUI and use File → Export Workflow (API).

Comfy Cloud API access requires a plan with an API key.

FAQ

Frequently Asked Questions

View all workflows
Showing 30 of 30 templates