Nodes/comfyui-acemusic/AceMusic Settings
ComfyUI Node

AceMusic Settings

Duration, language, BPM, key, and the sampler knobs

By hiroki-abe-58·Created 7 months ago·Updated 7 months ago· 42
AceMusic Settings
    • settings
    duration30
    vocal_languageja
    bpm120
    timesignature4/4
    keyscale
    instrumentalfalse
    inference_steps27
    guidance_scale15.0
    seed-1

    AceMusic Settings is where every generation parameter for the Text2Music path lives. Instead of burying nine sliders inside the generator node (where they'd fight for space and get tangled in workflow-save ordering), the pack's author pulled them all out into this single node that emits one settings object. Wire it into AceMusic Generator (Text2Music) and you're done - change a BPM here and every downstream generation respects it. It's the pack's modular-architecture move, and honestly it makes the graph a lot easier to read than a wall of widgets.

    What each input does

    • duration - 5 to 240 seconds, default 30. The full song length. For the longest clips, consider turning on overlapped_decode in the Model Loader.
    • vocal_language - defaults to ja. The dropdown ships with the ten best-supported languages plus unknown, but the model was trained on 19 total (the README rates English, Chinese, and Japanese "excellent"). Set it to match your lyrics or the vocals will be nonsense.
    • bpm - 0 to 300, default 120. This is the one where people trip: 0 means auto (the node skips the BPM tag and lets the model decide). Set it to something real only if you actually care about tempo.
    • timesignature - 4/4 by default, with 3/4, 2/4, 6/8, 5/4, 7/8, 12/8 and a blank "no signature" option. Most songs never touch this. A waltz is your excuse.
    • keyscale - pick from the 24 keys (C Major through B Minor) or leave blank for auto. Blank is a perfectly good answer.
    • instrumental - the off switch for vocals. Flip it and you get the backing track with no singer, regardless of what's in the lyrics box.
    • inference_steps - 27 default, 1–100. This is the quality dial: 10–15 for fast drafts, 50–100 when you're serious and willing to wait. ACE-Step is fast enough that cranking this doesn't hurt as much as you'd think.
    • guidance_scale - 15 default, 1–30. How hard the model obeys the caption. Lower = more creative drift, higher = more prompt-lock. 10–20 is the sane band.
    • seed - -1 is random; any non-negative integer reproduces a result given identical inputs elsewhere.

    One output: settings (ACEMUSIC_SETTINGS), which plugs into the Generator's settings socket. It also plays nicely if you want to share a settings node across a few generator variants in one graph.

    How it works

    The node doesn't generate anything itself - it's a parameter packager. It takes your values and hands them to the generator, which folds the non-auto ones into the text prompt as tags (so a set BPM becomes BPM: 120 in the prompt, a chosen key becomes Key: A Minor, and so on). That's why "0 for auto" and "blank for auto" are first-class states rather than an afterthought: absent tags are the model's cue to decide for itself.

    Installing it

    Same as the rest of the pack: ComfyUI Manager, search "ComfyUI-AceMusic", or

    cd ComfyUI/custom_nodes
    git clone https://github.com/hiroki-abe-58/ComfyUI-AceMusic.git
    cd ComfyUI-AceMusic
    pip install -r requirements.txt
    pip install git+https://github.com/ace-step/ACE-Step.git
    

    The pack's own requirements are minimal (torch, torchaudio, soundfile, numpy, scipy). The install pain is ACE-Step's strict == pins - if the pip install fails with "No matching distribution found for torchaudio==…", clone ACE-Step, loosen the pins to >=, and install it editable, or install deps manually and use --no-deps on the git install.

    Common issues

    • The model ignores my BPM / key - that's expected when they're left at auto. Set explicit values if you want them respected.
    • Song sounds off for the language I picked - make sure vocal_language matches the lyrics, and remember en/zh/ja are the strongest languages.
    • Settings won't connect to the Generator - both nodes are from this pack and use the same custom type, so this only happens if you're mixing in a node from a different ACE-Step pack. Keep generator and settings in the same pack.
    • Murky low-quality output - bump inference_steps; the 27 default is a draft number.

    If you're only ever going to touch one parameter, let it be inference_steps. It's the difference between "rough demo" and "almost releaseable".

    CategoryAceMusic/Settings

    Inputs (9)

    NameTypeDefaultDescription
    durationFLOAT305–240
    vocal_languageCOMBOja11 options: unknown, en, zh, ja, ko, es, +5
    bpmINT1200–300
    timesignatureCOMBO4/48 options: , 4/4, 3/4, 2/4, 6/8, 5/4, +2
    keyscaleCOMBO25 options: , C Major, C Minor, C# Major, C# Minor, D Major, +19
    instrumentalBOOLEANfalse
    inference_stepsINT271–100
    guidance_scaleFLOAT15.01–30
    seedINT-1-1–2147483647

    Outputs (1)

    NameTypeDescription
    settingsACEMUSIC_SETTINGS