BerniniR · Load Video (webp/gif/mp4/mov/...)
Feed Bernini the video you want to edit — without the RAM trap
- frames
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 inComfyUI/input. The upload button handles webp/gif; for mp4 and friends you drop the file intoComfyUI/inputyourself and it appears in the list. The README's sample value issource.webp, and that's a fine place to start.frame_load_cap(default 33) - maximum frames to load. This is the RAM trap.0means "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 withmax_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=0on a long clip will eat all your RAM before the first frame renders. Set a finite cap and lowermax_side. - WebP/GIF animations coming out as one frame? Shouldn't happen with this node - it iterates
ImageSequenceproperly. 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_videoinput. This node exists so you don't need VHS for the simple cases.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| video | COMBO | Ví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_cap | INT | 330–4096 | Máximo de frames (0 = todos). Con vídeos largos/4K usa finito (p.ej. 33); 0 puede agotar la RAM. |
| max_side | INT | 10240–8192 | Reduce cada frame a este lado mayor al cargar (0 = sin reducir). Ahorra RAM con 4K. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| frames | IMAGE | — |