ComfyUI Extension: ComfyUI-vid2frames
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.
A small ComfyUI custom node package for selecting useful still frames from a decoded video frame batch.
Looking for a different extension?
Custom Nodes (0)
README
ComfyUI-vid2frames
A small ComfyUI custom node package for selecting useful still frames from a decoded video frame batch.
Node
AIA_SelectVideoFrame
Inputs:
image: ComfyUIIMAGEbatch, usually decoded video frames.selector: text command describing the target frame type.
Output:
- A single-frame ComfyUI
IMAGEbatch.
Supported selector modes:
- Empty or unknown text: best still frame.
no face: lowest face score while still preferring usable frames.blurry: softest reasonable frame.moving: strongest motion frame with blur and lighting penalties.static: low-motion sharp frame.flickerorlighting: strongest lighting fluctuation.
Ranked variants are supported. For example, moving rank 2 or lighting #3 returns another high-scoring frame in the same category. Ranked picks apply temporal spacing so nearby frames from the same moment do not crowd out more useful alternatives.
How It Scores Frames
The node computes:
- Sharpness from Laplacian variance.
- Motion from neighbor-frame pixel deltas, smoothed over a short window.
- Lighting fluctuation from luminance deltas, smoothed over a short window.
- Face score from MediaPipe face detection, with OpenCV Haar cascades as a no-download fallback.
The first and last 8% of frames are lightly penalized for normal-length videos, because endpoints are often less representative.
Install
Clone into ComfyUI/custom_nodes and restart ComfyUI:
git clone https://github.com/Pmobilee/ComfyUI-vid2frames.git ComfyUI-vid2frames
pip install -r ComfyUI-vid2frames/requirements.txt
Tests
python -m pytest tests/test_frame_selector.py -q
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.