Nodes/ComfyUI-AudioX/AudioX Model Loader
ComfyUI Node

AudioX Model Loader

The gatekeeper for every AudioX generation

By lum3on·Created about a year ago·Updated about a year ago· 53
AudioX Model Loader
    • model
    model_name
    deviceauto
    config_nameauto

    Every generation node in the ComfyUI-AudioX pack takes an AUDIOX_MODEL input, and this is the only node in the pack that produces one. Think of it as the checkpoint loader for the audio world: you wire its model output into any AudioX generation node and that's your whole setup. If you've loaded a Stable Diffusion checkpoint before, you already know the shape of this thing.

    Under the hood, the pack is a wrapper around the AudioX model from HKUST Audio (a finetune built on stable-audio-tools), and this node loads it through stable-audio-tools' own create_model_from_config + checkpoint loading path. The model itself lives in the same folder you'd use for SD checkpoints: ComfyUI/models/diffusion_models/. You need both the weights file and the config.json from the HKUSTAudio/AudioX repo on Hugging Face. The README's rule of thumb: drop model.ckpt and config.json in there, and rename the weights to AudioX.ckpt.

    Inputs that matter

    The node is refreshingly simple - three inputs, one output:

    • model_name - a dropdown populated from whatever's in models/diffusion_models/. If it's empty, the file isn't where it expects it to be.
    • device - auto, cuda, cpu, or mps. Auto tries CUDA, then MPS (with a functional test - it falls back to CPU if MPS is broken), then CPU. Leave it on auto unless you have a reason.
    • config_name - optional, defaults to auto. The loader auto-detects the config in the model directory (it looks for config.json, {model_name}_config.json, model_config.json, and audiox_config.json), so you can usually ignore this. If you only had the configs/ folder from a vanilla SD setup, it can get confused - that's the one place this node shows its Stable Diffusion DNA.

    The single output is model (AUDIOX_MODEL), which you feed to any of the generation nodes. It's cached per model-file-and-device, so re-running a workflow doesn't re-load the weights from disk.

    Installing and the model download

    The pack isn't in the one-click install flow for the model itself - Manager can grab the code, but the weights are a manual step:

    cd ComfyUI/custom_nodes
    git clone https://github.com/lum3on/ComfyUI-StableAudioX.git
    cd ComfyUI-StableAudioX
    pip install -r requirements.txt
    
    # then the model
    pip install huggingface-hub
    huggingface-cli download HKUSTAudio/AudioX model.ckpt --local-dir ComfyUI/models/diffusion_models/
    huggingface-cli download HKUSTAudio/AudioX config.json --local-dir ComfyUI/models/diffusion_models/
    

    Rename model.ckpt to AudioX.ckpt afterwards. You also want ffmpeg and libsndfile installed at the system level (sudo apt install ffmpeg libsndfile1-dev build-essential on Ubuntu) - generation itself doesn't strictly need them, but the pack's video helpers and any audio encoding do.

    Where people get burned

    • Model dropdown is empty. The file isn't in diffusion_models/, the name doesn't end in .ckpt/.safetensors, or you skipped the license acceptance on Hugging Face. Also check permissions - this pack has had "file exists but unreadable" reports.
    • First startup takes forever or kicks off pip installs. The pack's __init__.py runs an "emergency dependency check" that auto-installs missing packages at ComfyUI startup. Let it finish once; if it fails, the nodes get replaced by placeholders that show the error when you run them.
    • VRAM is the real gate. The README claims 6GB recommended, but the top of the file says it was "only working on min 16GB VRAM - tested on a single 4090." Trust the second one. If loading OOMs, lower duration_seconds and step counts on the generation side - the loader is just the first wall you'll hit.
    • It loads but audio comes out garbage. That's usually a config problem: when no config is found the loader silently falls back to a built-in default, and a default config for a finetuned model is a coin flip. Confirm config.json is sitting next to the weights.

    Start here, connect model to AudioX Text to Audio, and you're generating sound effects inside ComfyUI - which is still niche enough that it's worth bragging about in a changelog.

    CategoryAudioX/Models

    Inputs (3)

    NameTypeDefaultDescription
    model_nameCOMBOSelect AudioX model file from models/diffusion_models/
    deviceCOMBOauto4 options: auto, cuda, cpu, mps
    config_nameoptCOMBOautoOptional: Select config file from models/configs/ (auto-detect if available)

    Outputs (1)

    NameTypeDescription
    modelAUDIOX_MODEL