Video Model Info
The node that stops your video sampler from guessing
- model
- model
- dit_config
- info_report
Every video model family hides a different latent space behind the same MODEL wire. LTX-Video reports 128 channels. Wan 2.1 and 2.2's 14B experts report 16. Wan 2.2's TI2V 5B reports 48. Mochi-1 reports 12. HunyuanVideo is 16, and HunyuanVideo 1.5 is 32. Get it wrong and the error you get back is a tensor shape complaint at sampling time, three nodes away from the actual mistake.
Video Model Info is a small inspector that reads the model, writes down its latent spec as JSON, and passes the model through. It's the least glamorous node in the pack and probably the one you'll connect most often.
How it actually works
The node does two probes, in order.
First it reads the model's class name (its own, and its inner .model attribute's) looking for a family keyword - ltx, hunyuan, wan, cogvideo, mochi. That picks the family. Then it reads the latent channel count the model itself reports via ComfyUI's latent_format.latent_channels, which picks the preset inside that family. Your model_preset selection is kept if it belongs to the detected family and matches the reported channels; otherwise the matching preset wins.
That second probe is the fix for a real bug: every Wan model used to be forced to Wan2.1 (16ch), including the 48-channel Wan 2.2 TI2V 5B, no matter what you selected.
The output dit_config is a JSON object carrying model_name, channels, spatial_compression, temporal_compression, latent_scale, has_temporal, and a defaults block with that model's recommended sampler, scheduler, steps and CFG. Two Radiance nodes downstream read it: Video Latent Noise (to size the latent) and Video Sampler (to pick sane sampling settings instead of the widgets).
Inputs and outputs
model- the loaded video model. Required.model_preset- 11 choices (SD-VAE (4ch)throughMochi-1 (12ch)), default LTX-Video. This is the fallback, not the primary path; it matters when detection finds nothing (custom wrappers, exotic loaders, merged checkpoints).override_channels- replace the channel count in the JSON.0keeps the preset value. Use it when you know better than the introspection, e.g. a repackaged checkpoint reporting the wrong latent format.override_latent_scale- replaced value is reported only; the tooltip is admirably blunt that Video Batch Decode doesn't apply it, because sampler output is already in VAE space. Don't expect a visible effect.print_info- off by default. Turn it on once per new model; it dumps the whole report to the ComfyUI console.
Outputs are model (unchanged passthrough - this is not a dead-end node), dit_config (STRING), and info_report (STRING): the detected preset, final spec, channels, both compressions, latent_scale and whether the model is temporal.
Install
Manager → search Radiance → install → restart → refresh browser. Manual install:
cd ComfyUI/custom_nodes
git clone https://github.com/fxtd-studios/radiance.git
cd radiance
python -m pip install -r requirements.txt
Windows portable users, use python_embeded\python.exe for pip. Radiance needs OpenImageIO and OpenColorIO installed into ComfyUI's Python environment even for a video-only graph - install.py does that for you, and missing libraries show up as an import error in the console, not a node-level message.
Where people get burned
Reading info_report without print_info. It's a string output, not a display. If you're not connecting it to a string-preview node and you haven't enabled print_info, you're not seeing it, and you'll assume detection failed when it didn't.
Assuming the preset wins. It doesn't when detection succeeds - that's the point. If you deliberately set Wan2.1 (16ch) on a 48-channel TI2V 5B checkpoint, the node will correct you and the report will say so (Auto-detect on its own line). Use override_channels if you genuinely need to force it.
Skipping it entirely. The default dit_config of "{}" makes Video Latent Noise fall back to an LTX-shaped 128-channel latent. Run that into a Wan model and the failure lands in the sampler with a shape error that names none of this.
Expecting it to change your pixels. It doesn't touch anything. It's a lookup table with a passthrough, and that's the whole job.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | Video diffusion model to inspect. It is passed through unchanged on the model output. | |
| model_preset | COMBO | LTX-Video (128ch) | Latent spec used when auto-detection finds nothing. Detection reads the model class name (ltx, hunyuan, wan, cogvideo, mochi) and the latent channel count the model reports. A preset from the detected family that matches the channels is kept; otherwise the matching one is used. |
| override_channelsopt | INT | 00–512 | Replace the latent channel count written to dit_config. 0 keeps the preset's value. |
| override_latent_scaleopt | FLOAT | 0.000–10 | Replace the preset's latent_scale in dit_config. Reported for reference; Video Batch Decode does not apply it, since sampler output is already in VAE space. 0 keeps the preset's value. |
| print_infoopt | BOOLEAN | false | Also write the info report to the ComfyUI console log. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| dit_config | STRING | — |
| info_report | STRING | — |