(Deno) LTX Tiled Spatial Upscaler
The tiled latent upscaler that makes LTX 2.3's second pass actually fit
- samples
- upscale_model
- vae
- upscaled_latent
LTX 2.3 has native latent spatial upscalers - you can 2× a video's spatial resolution inside the latent space before a low-denoise refinement pass, which is how you get to high-res output without generating at full res from scratch. The catch is that the upscaler runs on the whole latent at once, and on a tall or long clip that single pass can blow through your VRAM. (Deno) LTX Tiled Spatial Upscaler splits each frame into overlapping spatial tiles, runs the latent upscaler per tile, and reconstructs one video latent with float32 blending. Same result as the untiled path, fitted into whatever memory you actually have.
When to use it
The author's placement is specific: use it before a large low-denoise second pass, especially when tall LTX outputs start drifting in color or conditioning. If you've ever had a 2.3 render where the bottom half gradually shifts hue or the conditioning loosens as you push resolution, this is the mitigation - upscale in tiles with hann-blended overlap, then run the refinement sampler against a coherent latent instead of a monolithic one that wouldn't have fit anyway.
The README is explicit about what goes in: video-only LTX latents. If your workflow carries combined video/audio latents - and 2.3 famously does - separate the audio path first and rejoin it after the tiled video pass. Feed an AV latent in here and you'll be told to split it, not silently get a broken result.
Inputs and outputs
samples- the video-only LTX latent to upscale.upscale_model- an LTX latent spatial upscaler model (the official LTXVLatentUpsampler lineage).vae- the LTX VAE, used for the latent channel statistics the upscaler needs around its operation.horizontal_tiles/vertical_tiles- 2×2 default. More tiles = less VRAM per tile, more blend seams to manage.overlap- overlap in input latent tokens; more context per tile but more compute. 8 is the default and a fine start.blend_mode-hannrecommended.aggressive_memory_cleanup- on by default; slower, but helps on fragmented memory.
One output: upscaled_latent, ready to feed a sampler for the refinement pass.
Install and context
Standard pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/Deno2026/comfyui-deno-custom-nodes.git
# restart ComfyUI
You need the official ComfyUI-LTXVideo nodes and 2.3 models as the base - this is a helper on top of that stack, not a standalone upscaler. If you're running 2.3 on 12–16GB via GGUFs, this node plus the tiled sampler in the same pack is the practical high-res path.
The trap to avoid: thinking tiles give you free quality. Tiling trades VRAM for compute and can introduce visible seams if overlap is too small for the content - hair and fine textures are the first things to complain. Keep blend_mode at hann, bump overlap before you bump tile count, and check your output at a few frames rather than trusting the first. And if you notice color drift after the tiled upscale, the culprit is usually the refinement sampler's denoise strength being too high for the new resolution - back it off, don't re-tile.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| samples | LATENT | Video-only LTX latent to upscale. AV combined latents should be separated before this node. | |
| upscale_model | LATENT_UPSCALE_MODEL | LTX latent spatial upscaler model. | |
| vae | VAE | LTX VAE used for the latent channel statistics around the upscaler. | |
| horizontal_tiles | INT | 21–8 | Frame width split count. 2 means left and right tiles. |
| vertical_tiles | INT | 21–8 | Frame height split count. 3 means top, middle, and bottom tiles. |
| overlap | INT | 81–32 | Overlap in input latent tokens. Larger values blend more context but use more time. |
| blend_modeopt | COMBO | hann | Overlap weighting curve. Hann is the recommended starting point. |
| aggressive_memory_cleanupopt | BOOLEAN | true | Run extra cleanup between tiles. This can be much slower, but may help fragmented VRAM or OOM cases. |
| debugopt | BOOLEAN | false | Print tile plan and shape diagnostics to the ComfyUI console. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| upscaled_latent | LATENT | Upscaled video latent reconstructed from overlapping spatial tiles. |