Nodes/ComfyUI-FFMPEGA/Frame Extract (FFMPEGA)
ComfyUI Node

Frame Extract (FFMPEGA)

Extract individual frames and audio from a video at a specified frame rate, time range, and frame limit.

By AEmotionStudio·Created 7 months ago·Updated 3 months ago· 14
Frame Extract (FFMPEGA)
  • images
  • audio
  • frames
  • audio
  • frame_count
  • fps
  • duration
  • video_path
  • mask_points
  • crop_data
video_path
fps1.0
start_time0.00
duration0.00
max_frames100
input_video_path
mask_points
CategoryFFMPEGA

Inputs (9)

NameTypeDefaultDescription
video_pathSTRINGAbsolute path to the video file to extract frames from.
fpsFLOAT1.00.1–60Frames per second to extract. 1.0 = one frame every second, higher values extract more frames.
start_timeoptFLOAT0.000–3600Start time in seconds for frame extraction.
durationoptFLOAT0.000–3600Duration in seconds to extract frames from. 0 = full video from start_time.
max_framesoptINT1001–1000Maximum number of frames to return. Limits output to prevent memory issues with long videos.
imagesoptIMAGEOptional upstream IMAGE input (e.g. from VHS or Save Video). Accepted for wiring but frames are always extracted from the video.
audiooptAUDIOOptional upstream AUDIO. If connected, this audio is output instead of extracting from the video.
input_video_pathoptSTRINGOptional upstream video path (e.g. from Save Video or Load Video Path). Overrides the video_path text field when connected.
mask_pointsoptSTRINGOptional upstream mask_points pass-through. When connected, overrides the locally drawn mask points.

Outputs (8)

NameTypeDescription
framesIMAGEExtracted video frames as a batched image tensor.
audioAUDIOAudio from the extracted segment in ComfyUI AUDIO format.
frame_countINTNumber of frames extracted.
fpsFLOATSource video FPS (native frame rate, not extraction rate).
durationFLOATActual duration of the extracted segment in seconds.
video_pathSTRINGResolved absolute path to the video file.
mask_pointsSTRINGJSON-encoded point selection data from the Point Selector. Connect to FFMPEGA Agent's mask_points input for guided masking.
crop_dataSTRINGJSON-encoded crop rectangle from the Crop Selector. Format: {"x":N, "y":N, "w":N, "h":N}.