Antimeter Music Director - User Brief
Type a song idea in plain English — this node turns it into a structured brief for a local ACE-Step pipeline
- DIRECTOR_BRIEF
Let's get one thing straight up front: this node does not make music. It doesn't call a model, needs no API key, and generates nothing audible. Antimeter Music Director - User Brief is the front door of the pack's "Tier 2" ACE-Step workflow - you type what you want in plain English, and it hands the rest of the pipeline a tidy, structured packet to work from.
Where it sits
ACE-Step is the open-weights answer to Suno - the local music model the community calls the "runs on a potato GPU" Suno. It's genuinely good at instrumentals and notoriously weak at vocals and lyrics, and it's what the whole AntiMatter music chain feeds. The three Antimeter Music Director nodes are the scaffolding around that engine: User Brief turns your request into structured text, a local Qwen LLM turns that into a music "plan," Plan Validator & Router cleans and clamps the plan, and Save MP3 + Metadata writes the results to disk. This first node is where your idea enters.
How it works
Mechanically it's almost embarrassingly simple. It takes your request text plus a row of dropdowns, packages them into one JSON string, and sends that out a single STRING output. No model, no inference, no downloads - pure formatting. The one genuinely opinionated bit is the blueprint: each of the ten named presets (Afro House, Liquid Drum and Bass, Lo-fi Study, Trailer / Reveal…) carries a genre description, a default duration, and a default key that get baked into the brief, so the downstream LLM doesn't have to invent them from nothing.
The inputs that matter
- request_text - the only one you'll actually write. Free-form; more detail beats less. The default ("Create a 90-second uplifting Afro House track…") is a decent template.
- mode -
auto,instrumental,song, orvideo_music.autotries to infer the rest from your wording. - blueprint -
Autolets the director decide; picking a genre preloads tempo, duration and key. - quality_profile -
fast_preview/balanced/final, the pack's way of trading speed against polish.
Everything else - video_duration_seconds, target_language, variation_count (1–4), seed_policy, video_structure, energy_curve - is set-and-forget until you need it. The defaults are sane.
Output: a single STRING, DIRECTOR_BRIEF. It wires into the local-LLM plan step - the pack's docs call out ComfyUI-QwenVL's AILab_QwenVL_GGUF_PromptEnhancer for that job. From there the plan flows to the Validator, then to ACE-Step.
Installing it
The pack clones like any other custom node:
cd ComfyUI/custom_nodes
git clone https://github.com/AntiMatterComfy/antimatter-nodes.git
Restart ComfyUI after. You can also try ComfyUI Manager and search for "AntiMatter Nodes"; if it doesn't show up there, the clone is the reliable route. The three music nodes themselves add zero Python dependencies - the pack's pyproject.toml declares none - but the workflow they belong to needs the ACE-Step 1.5 Turbo AIO checkpoint and a local Qwen GGUF model, and this pack won't download either for you. That's the real install cost, and it's all on the other packs.
Gotchas
- Run this node alone and you'll see a JSON blob in the preview, not music. That's working as intended - it's a text packet, and the "output" is the whole chain behind it.
- The pack imports
comfy_api.latestat module load, which is a recent ComfyUI API. On a stale install the entire pack fails to import, including the image/text nodes. Update ComfyUI before you blame anything else. - Worth knowing before you commit: this whole chain runs on your own GPU, offline and uncensored - no Suno subscription, no per-track fees. That's the reason a pipeline like this exists.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| request_text | STRING | Create a 90-second uplifting Afro House track for a sunset travel video, no lyrics, warm percussion, 122 BPM. | — |
| mode | COMBO | auto | 4 options: auto, instrumental, song, video_music |
| video_duration_seconds | FLOAT | 0.00–1000 | — |
| target_language | COMBO | auto | 16 options: auto, en, uk, es, fr, de, +10 |
| variation_count | INT | 11–4 | — |
| quality_profile | COMBO | balanced | 3 options: fast_preview, balanced, final |
| seed_policy | COMBO | director | 3 options: director, fixed, increment |
| blueprint | COMBO | Auto | 11 options: Auto, YouTube Background Music, Cinematic Documentary, Liquid Drum and Bass, Afro House, Vocal House Club, +5 |
| video_structure | COMBO | single_cue | 4 options: single_cue, looping_bed, intro_bed_outro, chaptered |
| energy_curve | COMBO | steady | 4 options: steady, slow_build, drop, calm_ending |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| DIRECTOR_BRIEF | STRING | — |