Nodes/ComfyUI-MaxedOut/Group Video Frames MXD
ComfyUI Node

Group Video Frames MXD

Split a long frame sequence into chunk-sized groups

By Maxed-Out-99·Created about a year ago·Updated 21 days ago· 9
Group Video Frames MXD
  • frames
  • IMAGE_GROUPS
group_size81

Video models and VRAM have a strained relationship: a long clip is fine as a concept, but a lot of operations need it in manageable pieces. Group Video Frames MXD takes a flat frame batch and splits it into a list of smaller groups - group_size frames each (default 81, which is a familiar number to anyone who's touched WAN's frame counts). Output is a list of image tensors: group 1, group 2, and so on, each an independent batch you can process separately.

What you set

  • frames - your image batch (the IMAGE from a VAE decode or video loader).
  • group_size - frames per group (default 81, range 1–5000).

The output IMAGE_GROUPS is a list, not a single tensor - that's the whole point. Downstream list-consuming nodes (loops, batch samplers, per-group processing) can take each chunk one at a time. If the total isn't a clean multiple of group_size, the last group just gets whatever's left; no padding, no dropped frames.

Why it exists

Two real use cases, both from the video-workflow trenches:

  1. Staying under memory limits. Decode a long WAN 2.2 take, group it into 81-frame chunks, and process each chunk through a sampler or upscaler that would OOM on the full sequence. You trade a bit of orchestration for fitting on your card.
  2. Looping over groups. ComfyUI's iteration patterns work on lists. Group the frames once, then run each group through the same downstream pipeline - different seed per group, per-group conditioning, that sort of thing. The node even prints a progress line ("Split N frames into M groups") so you can see what you got.

It's a plumbing node - no AI, no math beyond the chunking - but it's the kind of plumbing that unblocks workflows that otherwise need hand-built list splitting or a pile of index math.

Gotchas

  • You get groups, not a guarantee they're uniform. Last group shorter than the rest, by design.
  • It's a list output, so whatever consumes it must accept a list of image batches. If you want the flat sequence back, you'll need a join/batch node on the other side.
  • Frame-order is preserved, so group boundaries are arbitrary cut points - a video that loops or has scene changes won't align its chunks with your intent unless you set group_size accordingly.

Install

ComfyUI Manager → search Maxed Out → install → restart, or:

cd ComfyUI/custom_nodes
git clone https://github.com/Maxed-Out-99/ComfyUI-MaxedOut

No requirements.txt, no model downloads. Under MXD/Video. If you've ever hit "CUDA out of memory" halfway through processing a long clip, this is the node that breaks the problem into bite-size pieces.

CategoryMXD/Video

Inputs (2)

NameTypeDefaultDescription
framesIMAGE
group_sizeINT811–5000

Outputs (1)

NameTypeDescription
IMAGE_GROUPSIMAGE