Nodes/ComfyTV/Load Video
ComfyUI Node

Load Video

The quiet entry point for every ComfyTV edit chain

By jtydhr88·Created 3 months ago·Updated about 15 hours ago· 725
Load Video
    • video
    project_id
    parent_output_id0
    video

    Most ComfyTV pipelines start with generated clips from a Video Stage. But when you want to cut, stabilize, or grade footage that already exists - your own footage, a clip you exported from another editor - this is the node. Load Video registers a file from ComfyUI's input/ folder as a COMFYTV_VIDEO snapshot, and everything downstream just works.

    What it actually does

    It's an Input stage, so there's deliberately no ▶ Run button. You pick a file from the dropdown (or upload one, which writes it into input/), the node previews it, and the selection becomes the stage's output instantly. No queue, no model, no re-encode. The chosen URL is stored in the project, and any downstream stage that reads it uses that snapshot until you change the selection.

    The one parameter that matters is video: a combo of the video files it found in input/, with upload built in. The output is a single video (COMFYTV_VIDEO) that plugs straight into Video Clip, Crop, Resize, Extract Frame, Stabilize, or any other edit stage. Since it's a snapshot type rather than a native tensor, crossing back into a normal ComfyUI graph needs a → ComfyTV Video Bridge - the docs cover that under bridges.md.

    Where people get confused

    The classic mix-up: this node reads raw files on disk, while "Load Video from Asset" browses the project's asset library (generated clips, sidebar imports). If you generated something in a Video Stage and can't find it here, you're looking at the wrong node. Similarly, don't come here expecting AI generation - that's the Generate → Video Stage. This one only loads.

    A few practical notes. Extensions: stick to common containers (MP4, WebM, MOV) so ComfyTV's PyAV-based engine recognizes the file. If an upload doesn't show up in the dropdown, refresh the page. And it's a real re-encode-free load, which makes it the right starting point for the "exported clip → edit inside ComfyUI" workflow - the pack's whole video suite is built to be fed from here.

    Installing

    Same story as every ComfyTV node: cd ComfyUI/custom_nodes && git clone https://github.com/jtydhr88/ComfyTV, then restart ComfyUI. Or install via ComfyUI Manager - search for "ComfyTV". If you're on ComfyUI Desktop or have more than one install, clone into the running instance's custom_nodes by absolute path, and double-check you don't end up with a nested ComfyTV/ComfyTV/ folder.

    Troubleshooting

    • "Nothing in the dropdown" - drop files into input/ (or upload via the node) and refresh.
    • Downstream says type mismatch - you wired a native VIDEO tensor into a ComfyTV socket, or vice versa. Bridges exist precisely for this.
    • It loads but downstream errors on Run - the file may not be decodeable by PyAV; try a standard MP4/H.264 export.

    That's the whole node. It's boring on purpose - the least flashy stage in the pack, and the one almost every real footage edit starts with.

    CategoryComfyTV/Input

    Inputs (3)

    NameTypeDefaultDescription
    project_idSTRINGInternal — populated by the projectStore on the frontend.
    parent_output_idINT00–2147483647Internal — lineage parent set by spawn handlers on the frontend.
    videooptCOMBOPick an existing input file or upload a new one. The selected video becomes this stage's output.

    Outputs (1)

    NameTypeDescription
    videoCOMFYTV_VIDEO