Nodes/ComfyUI-BerniniR/BerniniR · Load Video (webp/gif/mp4/mov/...)
ComfyUI Node

BerniniR · Load Video (webp/gif/mp4/mov/...)

Feed Bernini the video you want to edit — without the RAM trap

By neuregex·Created 3 months ago·Updated 3 months ago· 24
BerniniR · Load Video (webp/gif/mp4/mov/...)
    • frames
    video
    frame_load_cap33
    max_side1024

    BerniniR · Load Video turns a clip on disk into the frame batch that BerniniR · Encode Source/Reference expects for video editing (v2v / rv2v). It reads webp and gif with Pillow - zero extra dependencies - and mp4/mov/avi/mkv/webm through whatever video backend you happen to have installed. It's the pack's own little frame loader, and for a beginner it beats wiring up VideoHelperSuite just to get frames in.

    The one decision that actually matters lives in its defaults, and it's a trap worth understanding before you hit it.

    The inputs

    • video - a dropdown listing videos in ComfyUI/input. The upload button handles webp/gif; for mp4 and friends you drop the file into ComfyUI/input yourself and it appears in the list. The README's sample value is source.webp, and that's a fine place to start.
    • frame_load_cap (default 33) - maximum frames to load. This is the RAM trap. 0 means "all frames at original resolution," and a long 4K clip is comfortably over 10 GB of RAM. The default 33 keeps memory sane. For a full-length 81-frame edit, set it to 81 (or to the clip's frame count) and pair it with max_side.
    • max_side (default 1024) - downscales each frame to this longest side on load. It's the second half of the 4K protection: cap limits count, this limits size per frame.

    Remember Bernini editing is heavy by design - the source video is part of the model input, so a 81-frame edit processes roughly double what a plain Wan generation would. Loading 200 frames at 4K "because the clip is nice" is how you OOM before the sampler even starts.

    Output

    frames (IMAGE) - a [T, H, W, C] batch in 0..1, straight into Encode Source/Reference's source_video input (or anywhere else that eats an image batch).

    Install

    Shared pack install: ComfyUI Manager, or clone into custom_nodes + pip install -r requirements.txt. The webp/gif path needs nothing extra. The mp4 path needs at least one video backend - see below.

    Troubleshooting

    • "BerniniRLoadVideo: no pude decodificar ese vídeo" (couldn't decode) - that's the node telling you no video backend is installed. Any of these fixes it, in the pack's own preference order:
      pip install av            # recommended
      pip install opencv-python
      pip install "imageio[ffmpeg]"
    • OOM / frozen while loading? frame_load_cap=0 on a long clip will eat all your RAM before the first frame renders. Set a finite cap and lower max_side.
    • WebP/GIF animations coming out as one frame? Shouldn't happen with this node - it iterates ImageSequence properly. If you're feeding a static-looking webp that's actually a single frame, it is, in fact, a single frame.
    • Already using VideoHelperSuite? Fine to keep it: the README explicitly says VHS_LoadVideo wires into the same source_video input. This node exists so you don't need VHS for the simple cases.
    CategoryBerniniR

    Inputs (3)

    NameTypeDefaultDescription
    videoCOMBOVídeo en ComfyUI/input (webp/gif/mp4/mov/avi/mkv/webm). El botón carga webp/gif; para mp4, colócalo en ComfyUI/input.
    frame_load_capINT330–4096Máximo de frames (0 = todos). Con vídeos largos/4K usa finito (p.ej. 33); 0 puede agotar la RAM.
    max_sideINT10240–8192Reduce cada frame a este lado mayor al cargar (0 = sin reducir). Ahorra RAM con 4K.

    Outputs (1)

    NameTypeDescription
    framesIMAGE