UniVidX • Task Mode
't2RAIN' isn't a typo — decoding UniVidX's 30 modes
- task
Every UniVidX workflow funnels through this one dropdown. UniVidXTaskMode is the node that picks which of UniVidX's 30 task modes you're running, and it outputs a UNIVIDX_TASK over a teal socket that feeds the sampler. On its own it does almost nothing - but pick the wrong mode and your whole graph will refuse to run, so it's worth the two minutes to learn to read the names.
What the mode names mean
The names look like gibberish until you learn the encoding: <conditions>2<targets>. Everything left of the 2 is what you give the model as input; everything right of the 2 is what it produces. A lowercase t on the left means "text-only" - no image conditioning at all, just a prompt.
The letters depend on which variant you loaded:
- Intrinsic family (
variant = intrinsic):R=RGB,A=albedo,I=irradiance,N=normal. Sot2RAINis text-to-everything, andR2AINis "give me one RGB clip, get back albedo, irradiance and normal" - the demo mode in the pack's README. - Alpha family (
variant = alpha):R=composite RGB,P=pha (the matte),F=fgr (foreground),B=bgr (background).R2PFBis "give me the composite, hand me a matte, foreground and background."
There are 15 modes per family, 30 total - every non-empty subset of the four letters can be conditions, and the complement becomes targets. It's an exhaustive menu of every input/output split, which is genuinely useful for a model this flexible.
How it works
The node is a thin wrapper: it resolves the mode string to a family (intrinsic or alpha) and passes (mode, family) downstream as the UNIVIDX_TASK. The real enforcement happens in the sampler, which uses the family to validate against the loaded model variant, and the mode to know which of its optional IMAGE inputs you're required to wire up. This is the pack's whole type-safety story: purple UNIVIDX_MODEL, teal UNIVIDX_TASK and pink UNIVIDX_RESULT sockets make it structurally hard to mix families and end up with a nonsense run.
The one input on the node is mode, a dropdown defaulting to t2RAIN. The one output is task.
Wiring it into the workflow
The graph shape is always the same: Loader → TaskMode → Sampler → Decode. You only touch TaskMode once per graph, and the choice of mode determines everything downstream:
- Mode with an image condition (say
R2AIN) → wire that IMAGE into the sampler's matching socket (rgb). - Mode with
t(sayt2RAIN) → no image inputs needed, just a text prompt. - Intrinsic mode → end the graph with
UniVidXDecodeIntrinsic. - Alpha mode → end it with
UniVidXDecodeAlpha.
Install
Same as the rest of the pack - it ships with it, you don't install this node separately.
cd ComfyUI/custom_nodes
git clone --recurse-submodules https://github.com/dreamrec/UniVidX_ComfyUI.git
cd UniVidX_ComfyUI
python -m pip install -r requirements.txt
python install.py
(ComfyUI Manager also has it, search "UniVidX".) Restart ComfyUI and the five nodes appear under the UniVidX category.
Common issues
- "Task mode X is family=alpha, but loaded model is intrinsic" - you picked a mode from the wrong variant. Match the mode family to the Loader's
variantinput. This is the error you'll hit first and most often. - The sampler demands an input you don't have - a mode like
RA2INrequires RGB and albedo as conditions. Feed them or pick a mode whose conditions you can supply. t2RPFBgives a white matte - this is a known model limit, not your fault. Text-only alpha matting doesn't work well; use the video-conditionedR2PFBinstead.
That last one is worth internalizing: the t2 modes are where UniVidX's quality falls apart, especially for alpha. When in doubt, condition on a real RGB clip and let the model decompose rather than hallucinate.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| mode | COMBO | t2RAIN | 30 options: t2RAIN, R2AIN, A2RIN, I2RAN, N2RAI, RA2IN, +24 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| task | UNIVIDX_TASK | — |