ComfyUI Node

LTX2_SM_VAE

Two LTX video VAEs in one dropdown — decoder for frames, encoder for images

By smthemex·Created 7 months ago·Updated 3 months ago· 31
LTX2_SM_VAE
    • decoder
    • encoder
    vae

    LTX2_SM_VAE looks like a boring model loader, and mostly it is - but it's doing something Comfy users aren't used to. It loads one video VAE file and hands you two different objects: a decoder that turns latents back into frames, and an encoder that turns input images into latent conditioning for image-to-video. Same weights, two roles, one node.

    Why two outputs

    LTX-2.3 ships a rebuilt VAE with its own new latent space - the thing that made the old TinyVAE preview trick die, and the reason the model holds edges and hair detail better than LTX-2. In this pack's vendored pipeline, the VideoDecoder handles the decode pass and the ImageConditioner handles the I2V encode pass. load_vae() builds both from the single file you point the vae dropdown at, so you don't download anything twice.

    Wire it like this:

    • decoderLTX2_DECO_VIDEO (decode sampled latents to frames)
    • encoderLTX2_LATENTS (feed it an image when you want I2V)

    The vae dropdown reads from ComfyUI/models/vae/ and expects ltx-2.3-22b-distilled_video_vae.safetensors, which comes from the vae folder of unsloth/LTX-2.3-GGUF on HuggingFace (or the author's mirror). Yes, it's the "distilled" VAE even if you run the dev transformer - that's the standard file for 2.3.

    Gotchas

    • This is not Comfy's VAE type. It's an LTX-2 pipeline object, so don't try to wire it into a normal VAE Decode node - you'll get a type error. Use the pack's own LTX2_DECO_VIDEO for decoding.
    • Don't confuse it with the audio VAE. LTX2_SM_AUDIO_VAE is a separate node for the audio latents. Both live in the same models/vae folder; the audio one is ltx-2.3-22b-distilled_audio_vae.safetensors. Easy to pick the wrong file in the dropdown if you're not looking.
    • Missing from the list? The dropdown only shows files physically present in models/vae. If your file isn't there, ComfyUI hasn't seen it - restart after placing it.

    Install reminder

    Same pack, same story as every node here:

    cd ComfyUI/custom_nodes
    git clone https://github.com/smthemex/ComfyUI_LTX2_SM.git
    cd ComfyUI_LTX2_SM && pip install -r requirements.txt
    

    It depends on the diffusers/transformers stack plus gguf and omegaconf, and it loads through those rather than Comfy's native loader. The model runs with streaming offload, so expect the usual reload tax between runs - the node clears Comfy's model cache on every execute to keep 6GB cards alive.

    CategoryLTX2_SM

    Inputs (1)

    NameTypeDefaultDescription
    vaeCOMBO1 options: none

    Outputs (2)

    NameTypeDescription
    decoderVAE
    encoderVAE