Nodes/ComfyUI Stable Video Diffusion/Load Stable Video Diffusion Model
ComfyUI Node

Load Stable Video Diffusion Model

Load the Stable Video Diffusion checkpoint (the first of three)

By thecooltechguy·Created 3 years ago·Updated 2 years ago· 371
Load Stable Video Diffusion Model
    • MODEL
    checkpointsvd.safetensors
    num_frames14
    num_steps25
    device

    This is the node that loads the Stable Video Diffusion model into memory so the rest of the pipeline has something to work with. It's the first of the three nodes in thecooltechguy's SVD pack - SVDModelLoader → SVDSampler → SVDDecoder - and if you're using the split pipeline instead of the all-in-one SVDSimpleImg2Vid, this is where every run starts. Its whole job is: read a checkpoint off disk, build the SVD model, hand you a MODEL you can wire into the sampler and the decoder.

    Some context so you know what you're loading. SVD is Stability AI's November 2023 image-to-video model - their first video model, and a real one for its moment. The moment passed. Local video has since consolidated around Wan 2.2 for quality and LTX for speed, and SVD is mostly of historical interest now. None of that changes how this node works; just don't expect 2026 results out of a 2023 model.

    Why a loader has sampling settings

    Here's the thing that trips people up, and it's worth calling out because most ComfyUI loaders don't do this. Alongside the obvious checkpoint picker, SVDModelLoader also takes num_frames, num_steps, and device. A loader asking how many frames you want feels backwards.

    It's not a bug - it's how Stability's reference implementation is built. SVD bakes some of its configuration into the model at construction time rather than passing it per-sample, so this wrapper surfaces those knobs on the loader. The practical consequence: the settings you pick here need to line up with what the downstream sampler expects. Set them once, consistently, and don't treat them as throwaway.

    The inputs that matter

    • checkpoint (default svd.safetensors) - which SVD weights to load. The pack ships support for four files: svd.safetensors, svd_xt.safetensors, and their _image_decoder variants. The plain svd is the 14-frame base; svd_xt is the 25-frame "XT" version. This is the choice that matters most.
    • num_frames (default 14) - match this to your checkpoint. 14 for svd, 25 for svd_xt. Mismatching the frame count against the model is the classic way to get garbage or an outright error.
    • num_steps (default 25) - the denoising step budget the model is set up for. The default is fine; leave it unless you're deliberately experimenting.
    • device (cuda or cpu) - keep it on cuda. SVD on CPU is a theoretical option, not a practical one.

    The single output is MODEL. This wires into both the SVDSampler (which does the actual image-to-video diffusion) and the SVDDecoder (which turns the result back into frames) - the same loaded model feeds both stages of the split pipeline.

    How to install it

    • ComfyUI Manager - search ComfyUI Stable Video Diffusion (author thecooltechguy, of comfyworkflows.com), install, restart.
    • Manual - cd ComfyUI/custom_nodes && git clone https://github.com/thecooltechguy/ComfyUI-Stable-Video-Diffusion, then cd ComfyUI-Stable-Video-Diffusion && python install.py, and restart.

    Heads up: the manual path runs a custom install.py rather than a plain pip install -r requirements.txt, so it pulls in Stability's dependency stack and takes a while. And the loader has nothing to load until you download the weights: drop them into ComfyUI/models/svd/ (not the normal checkpoints folder). The base files come from HuggingFace at stabilityai/stable-video-diffusion-img2vid and -img2vid-xt. They're multi-gigabyte each.

    Common issues & troubleshooting

    The checkpoint dropdown is empty. The models must be in ComfyUI/models/svd/. This pack looks in its own dedicated folder, so weights sitting in your usual models/checkpoints/ are invisible to it. Move them and restart.

    Errors or mush the moment the sampler runs. Check that num_frames matches your checkpoint - 14 with svd, 25 with svd_xt. Because this loader carries frame settings that the reference implementation bakes in, a mismatch here surfaces as a failure downstream, which makes it easy to blame the wrong node.

    install.py failed and the nodes never appeared. That installer does more than a normal requirements file. Read its output for the actual pip error - a missing build tool or a dependency conflict is the usual cause - and re-run it. A partial install leaves the pack loaded but broken.

    Considering the split pipeline vs. the simple node. The only reason to use this loader over SVDSimpleImg2Vid is reuse: a standalone MODEL lets you keep it loaded across multiple sampler runs and lets you reach the intermediate latent. If you don't need either, the all-in-one node is less to wire.

    CategoryComfyUI Stable Video Diffusion

    Inputs (4)

    NameTypeDefaultDescription
    checkpointCOMBOsvd.safetensors4 options: svd.safetensors, svd_image_decoder.safetensors, svd_xt.safetensors, svd_xt_image_decoder.safetensors
    num_framesINT14
    num_stepsINT25
    deviceCOMBO2 options: cuda, cpu

    Outputs (1)

    NameTypeDescription
    MODELMODEL