ComfyUI Node

Load Video UI

Trim, crop, and preview your reference video in the node

By WhatDreamsCost·Created 5 months ago·Updated 26 days ago· 1,996
Load Video UI
    • images
    • audio
    • duration
    • frame_count
    • filename
    video
    start_time0.00
    end_time0.00
    duration0.00
    start_frame0
    end_frame0
    duration_frames0
    resize_methodmaintain aspect ratio
    custom_width0
    custom_height0
    frame_rate24
    display_modeseconds
    crop_x0.000
    crop_y0.000
    crop_w1.000
    crop_h1.000

    Load Video UI is the WhatDreamsCost pack's take on ComfyUI's stock Load Video node, and the pitch is "trim, resize, crop, and preview your clip in real time, all inside the node." For anyone doing LTX video extension, retakes, or IC-LoRA control videos, this is the node you'll actually want on the canvas - mostly because the stock loader makes you guess trim values and can't be dropped onto, which gets old fast.

    It's part of the same free pack as LTX Director and Load Audio UI, so it shares their philosophy: fewer round-trips to an external video editor, more of the edit happening where the generation happens.

    How it works

    Under the hood it's still the standard ComfyUI video pipeline - decode with av, hand you back an IMAGE tensor plus the extracted AUDIO - but the interface does the annoying work for you. A dropdown lists every video in your input/ folder and the whatdreamscost workspace subfolder, and you can drag and drop a file straight onto the node. A progress bar shows decode status, and the node previews so you can actually see where the good part of the clip is instead of counting frames in your head.

    A display_mode toggle switches the whole interface between seconds and frames - set your trim in whichever unit you think in, and the node keeps the two in sync. The trim controls come in both flavors (start_time/end_time/duration and start_frame/end_frame/duration_frames), and frame_rate lets you force the extraction to a specific FPS so your video frames line up with your latent's frame count. One genuinely useful quirk from the author's notes: unlike the stock node's ~100MB cap, this one will load long videos without complaining - see the gotcha below for why that's a double-edged sword.

    Inputs that matter

    • video - the file dropdown. Set the rest after you've picked one.
    • start_time / end_time (or frame equivalents) - your trim window.
    • resize_method - maintain aspect ratio, stretch to fit, pad, or crop. Crop is the one people actually reach for when forcing an odd source into LTX-friendly dimensions.
    • custom_width / custom_height - 0 means keep original. Set both to resize.
    • crop_x / crop_y / crop_w / crop_h - normalized (0–1) crop box, added in v1.2.8 with aspect-ratio presets.

    Outputs

    Five of them: images (IMAGE), audio (the AUDIO track, so you can feed the clip's sound into an LTX audio-conditioned workflow), duration (FLOAT), frame_count (INT), and filename (STRING, added in 2.0.4 after requests). The typical wiring is images into a video-to-video or IC-LoRA node, or straight into LTX Director's timeline for extension and retakes.

    Install

    Same as the rest of the pack:

    cd ComfyUI/custom_nodes
    git clone https://github.com/WhatDreamsCost/WhatDreamsCost-ComfyUI
    

    Or search WhatDreamsCost in ComfyUI Manager and install, then restart. No model downloads, no extra Python deps - it runs on ComfyUI's own av and torch. Keep ComfyUI reasonably current since the pack targets the newer node API.

    Gotchas

    The big one is RAM. The author is upfront about it: this node uses no extra libraries and can't stream - decoding a large video into a tensor is memory-hungry, so trimming a 10-minute clip is fine, but outputting large videos will eat your RAM. Trim for the part you need; don't load a feature film and wonder why your machine swapped to death. Also note the same silent-fallback behavior as Load Audio UI - a missing file degrades gracefully rather than erroring, so a blank output usually means the file moved.

    CategoryWhatDreamsCost

    Inputs (16)

    NameTypeDefaultDescription
    videoCOMBO1 options: none
    start_timeFLOAT0.000–100000
    end_timeFLOAT0.000–100000
    durationFLOAT0.000–100000
    start_frameINT00–10000000
    end_frameINT00–10000000
    duration_framesINT00–10000000
    resize_methodCOMBOmaintain aspect ratio4 options: maintain aspect ratio, stretch to fit, pad, crop
    custom_widthINT00–100000Custom width. 0 means original width.
    custom_heightINT00–100000Custom height. 0 means original height.
    frame_rateINT241–120Force the video to a specific frame rate for extraction.
    display_modeCOMBOseconds2 options: seconds, frames
    crop_xFLOAT0.0000–1
    crop_yFLOAT0.0000–1
    crop_wFLOAT1.0000–1
    crop_hFLOAT1.0000–1

    Outputs (5)

    NameTypeDescription
    imagesIMAGE
    audioAUDIO
    durationFLOAT
    frame_countINT
    filenameSTRING