โ Frame Set Split End
Trim the tail โ peel the last N frames off any clip
- frames
- beginning
- other
Frame Set Split End [DVB] is the sibling of Frame Set Split Beginning, aimed at the other end of the clip. Give it a frame set and a num_entries count, and it puts everything except the last num_entries frames into the beginning output and the final num_entries frames into other. Same scissors, mirrored. It's the node for trimming a bad tail, isolating an ending segment for a loop, or pulling the last few frames off so you can append a transition that actually has room to work.
The mechanics, and the naming trap
This is where you have to watch the output names, because they're shared with its sibling and mean slightly different things. In Split Beginning, beginning is literally the first N frames. In Split End, beginning is everything except the last N - the front part of the clip - and other is the tail you split off. So if you want the last three frames out of a 30-frame clip, set num_entries: 3: beginning gets frames 0โ26, other gets 27โ29. Think of "beginning" as "the main part that starts at the beginning" in this node's case.
And like its sibling, num_entries counts existing frames, not index positions - a gappy set splits by entry count, and the count is clamped to the set's length, so you can't over-request. Indices are preserved, not renumbered: the tail keeps its original indices, so appending it elsewhere lines up cleanly. If you want a tidy renumbered clip out of either piece, follow with Frame Set Reindex [DVB].
Why you'd use it
The tail is where a lot of slop accumulates - the last frames of a generation run can warp, the end of a loop can jump, a transition needs the final frames removed before a clean cut. This node peels those off while keeping the main body flowing through the rest of the graph, and because both outputs are live frame sets, the tail isn't wasted: rerun it through a fade, repeat it, or loop it as a standalone while the main clip continues elsewhere.
It's also the natural partner for the "hold the last frame" trick: split off the final frame with num_entries: 1, then Frame Set Repeat it to hold that pose on screen for as long as you like. Cheap, and it reads like an intentional freeze.
The pack-wide exit rule
Both outputs are FRAME_SETs, and standard ComfyUI nodes can't consume that type. When a branch is heading to an encoder or save node, route it through Unwrap Frame Set [DVB] first to get a plain IMAGE batch and framerate - the same rule as every node in this pack, and the one beginner gotcha that consistently stumps people trying to get a finished clip out of the graph.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/alt-key-project/comfyui-dream-video-batches.git
cd comfyui-dream-video-batches
pip install -r requirements.txt
Restart ComfyUI, or search "Dream Video Batches" in ComfyUI Manager. No model downloads - this is list slicing over the set's frames, same as its sibling.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| frames | FRAME_SET | โ | |
| num_entries | INT | 1 | โ |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| beginning | FRAME_SET | โ |
| other | FRAME_SET | โ |