Nodes/S42 CutFlow/📋 S42 CutFlow Frame Extract
ComfyUI Node

📋 S42 CutFlow Frame Extract

Indices, Intervals, and Ranges

By GeekyGhost·Created 6 months ago·Updated 4 months ago· 3
📋 S42 CutFlow Frame Extract
  • clip
  • frames
  • frame_count
  • info
modeinterval
index_list0, 12, 24
interval4
range_start0
range_end-1

You don't always need a full clip. Sometimes you need three specific frames for an LTX guide, a thumbnail candidate, or a keyframe for a storyboard. Sometimes you want to drop from 24fps to 6fps for a choppy stylized look or to cut processing load. S42CF_FrameExtract does both jobs with one mode switch - it pulls frames out of an IMAGE batch by index, by interval, or by range.

The three modes

  • indices - pull exact frames from a comma-separated index_list (default 0, 12, 24). This is the keyframe picker. Use it to grab first/middle/last frames from a source video to feed as LTX 2.3 guide frames, or to pull thumbnails for a contact sheet.
  • interval (default) - take every Nth frame via interval (default 4 → frames 0, 4, 8…). This is the frame-rate reducer. Extract every 4th frame from 24fps footage and you've got a 6fps version - a classic stylized-choppy look, or a way to iterate fast on a heavy chain at reduced cost.
  • range - pull a contiguous block from range_start to range_end (default 0 to -1, where -1 means end of clip). This is basically a lightweight trim that doesn't need FPS info, and it's handy for slicing a segment out for separate processing.

Why you'd bother

The outputs are frames (the extracted IMAGE batch), frame_count, and info. Note the output name is frames, not clip - don't go hunting for a clip socket that isn't there.

Three concrete uses, all real:

  1. LTX guide frames. LTX 2.3's FLF2V workflow wants specific frames for conditioning (via LTXVAddGuide). Extract first + last, or a few keyframes, and feed them where the guide nodes expect images.
  2. Batch thumbnails. Pull a handful of evenly spaced frames, stack them into a contact sheet elsewhere, and you can review a whole clip's worth of content without watching it.
  3. Speed + processing tricks. Downsample a high-fps source before a heavy effect so you're only running the effect on a fraction of the frames, then (if needed) let a frame-blend or insert step bring it back toward full.

Install

It's one node in the 53-node S42 CutFlow pack. ComfyUI Manager → search "S42 CutFlow" → Install → restart ComfyUI. Manual:

cd ComfyUI/custom_nodes/
git clone https://github.com/GeekyGhost/S42-CutFlow.git
pip install -r S42-CutFlow/requirements.txt

Restart fully and confirm [S42 CutFlow] Loaded 53 total nodes in the console. Pure CPU, no models, no VRAM - just tensor slicing under the hood. Only pack-level dependency is OpenCV (opencv-python-headless in the requirements file; the README's troubleshooting suggests opencv-python if you see "No module named 'cv2'").

And the standing pack disclaimer, briefly: Geeky Ghost ships this as a work-in-progress grooming ground for LTX Desktop. The clip-ops core is stable; keep an eye on changelogs for the expanded nodes.

CategoryS42 CutFlow/Clip Ops

Inputs (6)

NameTypeDefaultDescription
clipIMAGESource clip.
modeCOMBOinterval'indices' = specific frame numbers from index_list. 'interval' = every Nth frame. 'range' = continuous range.
index_listSTRING0, 12, 24Comma-separated frame indices (used in 'indices' mode). E.g. '0, 12, 24, 36'.
intervalINT41–100Extract every Nth frame (used in 'interval' mode). E.g. 4 = frames 0,4,8,12...
range_startINT00–99999Start frame for 'range' mode.
range_endINT-1-1–99999End frame for 'range' mode. -1 = end of clip.

Outputs (3)

NameTypeDescription
framesIMAGE
frame_countINT
infoSTRING