Load Video π
A video loader that trims, thins, and doesn't eat your RAM
- frames
- audio
- frame_count
- fps
- width
- height
- duration
- video
Every video workflow starts the same way: get the frames out of a file, get the metadata out too, and don't blow up your machine doing it. Load Video π is the AusBoss pack's take on that chore - a full loader with a trim timeline built in, plus the lazy VIDEO output that lets clips chain straight into ComfyUI's own video nodes.
What you get
The outputs read like a spec sheet: frames (BHWC batch), audio (the same trim window's audio, silent if there's no track), frame_count, fps, width, height, duration - everything downstream needs to size latents and encode correctly. Then the interesting one: video, a lazy core VIDEO handle. Frames decode only when a consumer asks for them, so you can pass a whole clip to a core video node without paying the decode cost up front.
The player built into the node is the interface. It has a two-handle trim timeline - drag IN and OUT, type exact h:mm:ss.s timecodes below it, preview just that window, loop it optionally. Only the selected window gets decoded, which is where the memory safety comes from.
The controls that keep it honest
start_seconds/end_seconds- the trim window. 0 end means "to the end."custom_width/custom_height- optional resizing; set one side only and the other follows to preserve aspect.every_nth- keep one frame in N. 2 halves the frame count, and thefpsoutput divides to match, so the clip still plays at real speed downstream. This is how you thin a long clip for a quick pass.max_frames- hard cap on kept frames. The decode ends early rather than loading and discarding, which is the difference between "slow but fine" and "16GB of RAM gone."
There's a memory guard on oversized trims too: it reports instead of exhausting RAM. The audio is extracted lazily, only when consumed.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/ausboss/ComfyUI-AusBoss.git
Restart ComfyUI and search for AusBoss (Manager: ComfyUI-AusBoss). No extra Python dependencies - decoding uses PyAV, which ships with ComfyUI. Minimum ComfyUI 0.27.1.
Troubleshooting
If the video output shows None, your ComfyUI core predates the VIDEO type - every version this pack supports has it, but a very old core won't. If a huge trim is refused, that's the memory guard doing its job; slice it with max_frames or a tighter window instead of fighting it. And the classic: every_nth thins the batch but the visual preview still shows the source - check fps if downstream timing looks fast or slow. Wire fps from this node into Save Video and the timing problem mostly stops existing.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| video | COMBO | Video in ComfyUI's input folder; use the upload button to add one. | |
| start_seconds | FLOAT | 0.000β86400 | Skip everything before this time. Drag the preview's IN handle or type an exact value below the player. |
| end_seconds | FLOAT | 0.000β86400 | Stop at this time; 0 plays to the end. Drag the preview's OUT handle or type an exact value below the player. |
| custom_width | INT | 00β16384 | 0 keeps the source width; set one side only to preserve aspect. |
| custom_height | INT | 00β16384 | 0 keeps the source height; set one side only to preserve aspect. |
| every_nthopt | INT | 11β512 | Keep one frame in this many β 2 halves the frame count. The fps output divides to match, so the clip still plays at real speed downstream. |
| max_framesopt | INT | 00β100000 | Stop after this many kept frames; 0 loads the whole trim window. Caps memory on long clips β the decode ends early instead of loading and discarding. |
| single_frameopt | BOOLEAN | false | Load only the frame at the IN time as a one-image batch. The preview's trim strip becomes a frame picker (the FRAME button toggles this), and end_seconds, every_nth, and max_frames are ignored. |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| frames | IMAGE | Trimmed BHWC frame batch. |
| audio | AUDIO | Audio for the same trim window; silent when the video has no audio track. |
| frame_count | INT | Number of frames returned. |
| fps | FLOAT | Frames per second of the returned batch: the source rate divided by every_nth. |
| width | INT | Frame width after any custom sizing. |
| height | INT | Frame height after any custom sizing. |
| duration | FLOAT | Duration in seconds of the returned frames. |
| video | VIDEO | Core VIDEO for the same trim window at the source size; frames decode only when a consumer asks for them. None on ComfyUI cores without the comfy_api VIDEO type (present on every version this pack supports). |