Nodes/ComfyUI-Woosh/Woosh TextConditioning
ComfyUI Node

Woosh TextConditioning

The optional prompt encoder

By Saganaki22·Created 5 months ago·Updated 4 months ago· 130
Woosh TextConditioning
    • text_conditioning
    mode

    Honest framing: this is the one Woosh node you can skip and still generate sound. The Woosh Sampler ships with an internal CLAP conditioner, so text-to-audio works with just a model loader and a sampler. Woosh TextConditioning exists for the two cases where you want the conditioner outside the model: when you want to reuse the exact same conditioning across runs without re-encoding, and when you're grading your output with a CLAP Score node - which takes a text_conditioning input and scores how well a generated clip matches the prompt.

    If either of those is your workflow, here's what it does: it loads Sony's CLAP text conditioner - TextConditionerA for text-to-audio, TextConditionerV for video-to-audio - and hands it to the sampler or the scorer. That's the entire node.

    How it works

    One input, one output. The mode dropdown picks which conditioner loads:

    • T2A - text to audio (Flow/DFlow)
    • V2A - video to audio (VFlow/DVFlow)

    The output text_conditioning is a WOOSH_TEXT_COND type that plugs into the Woosh Sampler's optional text_conditioning input. Connect it and the sampler swaps your externally-loaded conditioner in place of the model's internal CLAP for that run. Leave it disconnected and nothing changes - the sampler happily uses the built-in one.

    The trap: mode must match the model

    The one thing that bites people is mismatching mode with the generative model you loaded. Feed a T2A conditioner into a VFlow (video) model and the sampler raises a loud, specific error telling you exactly which mode it needed. It's not a silent wrong-answer failure, so the fix is a dropdown flip - but it's easy to set the mode once, forget about it, and be confused later when V2A keeps erroring. Match mode to the model you loaded into the Woosh Model Loader, not to whichever one you last touched.

    Install and models

    ComfyUI Manager (search Woosh) or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Saganaki22/ComfyUI-Woosh.git
    pip install -r ComfyUI-Woosh/requirements.txt
    

    Then restart ComfyUI fully. TextConditionerA and TextConditionerV are both required downloads even if you only ever run one mode - the README is explicit that every generative model references them internally. Same rules as the rest of the pack: folders live in ComfyUI/models/woosh/, each with config.yaml and weights.safetensors at its root, and the first run pulls the RoBERTa tokenizer into models/woosh/hf_cache/.

    When to just not use it

    If you're not scoring with CLAP and you're not trying to share one conditioner across runs, leave this node out. It's one less thing in the graph and one less mode to keep in sync - the sampler's built-in CLAP does the job well enough that this node exists for a specific need, not for completeness.

    CategoryWoosh/Conditioning

    Inputs (1)

    NameTypeDefaultDescription
    modeCOMBOPick the conditioner that matches your generative model type

    Outputs (1)

    NameTypeDescription
    text_conditioningWOOSH_TEXT_COND