Video Frame Extractor: Thumbnails, Scenes, Keyframes, Timecodes avatar

Video Frame Extractor: Thumbnails, Scenes, Keyframes, Timecodes

Pricing

from $1.00 / 1,000 extracted frames

Go to Apify Store
Video Frame Extractor: Thumbnails, Scenes, Keyframes, Timecodes

Video Frame Extractor: Thumbnails, Scenes, Keyframes, Timecodes

Extract still frames from video files (MP4, MOV, WebM, MKV, AVI): N evenly spaced, every N seconds, exact timestamps, scene changes or keyframes. JPG/PNG/WebP with timecodes, video metadata and a free contact sheet. Ready for AI vision.

Pricing

from $1.00 / 1,000 extracted frames

Rating

0.0

(0)

Developer

Andriy Kuzmenko

Andriy Kuzmenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Turn videos into still images: thumbnails for a gallery, one frame per scene for AI vision or video search, or frames at the exact moments you need — each with its timecode and a download link.

  • Five modes: N evenly spaced frames, one frame every N seconds, exact timestamps (90.5, 01:30, 1:02:03), every scene change (adjustable sensitivity), or the video's keyframes.
  • JPG, PNG or WebP, optional downscaling (maxWidth).
  • Contact sheet with all frames and timecodes in one image — free.
  • Video metadata: duration, resolution, frame rate, codec.
  • Files up to 2 GB: MP4, MOV, WebM, MKV, AVI, M4V, MPEG, 3GP and anything else ffmpeg reads.

Why this Actor

This ActorTypical alternatives in the Apify Store (Oct 2026)
Price$1 per 1,000 frames, no per-video fee$2 per 1,000 frames, often plus $2–10 per 1,000 videos
ModesEvenly spaced, every N seconds, exact timestamps, scene changes, keyframesTwo or three modes
ExtrasFree contact sheet, timecodes, video metadata, JPG/PNG/WebP, downscalingContact sheet as a paid add-on or missing

Input

{
"sources": [{ "url": "https://example.com/lecture.mp4" }],
"mode": "scenes",
"sceneThreshold": 0.3,
"maxFramesPerVideo": 100,
"format": "jpg",
"maxWidth": 1280,
"contactSheet": true
}
FieldMeaning
sourcesDirect links to video files. Pages like YouTube are not supported. Files in your own Apify key-value store work too: set the store's access to "Anyone with ID can read" and use https://api.apify.com/v2/key-value-stores/<store ID>/records/<key> (the Actor runs with limited permissions and does not use your token).
modecount, interval, timestamps, scenes or keyframes
frameCountFrames for count
intervalSecondsSeconds between frames for interval (0.5 = two per second)
timestampsTimes for timestamps
sceneThreshold0.1 = sensitive … 0.5 = hard cuts only
maxFramesPerVideoUpper limit for every mode
format, maxWidthImage format and optional downscaling
contactSheetOne overview image per video (free)

Output

One item per video:

{
"url": "https://example.com/lecture.mp4",
"fileName": "lecture.mp4",
"mode": "scenes",
"duration": 1843.2,
"width": 1920,
"height": 1080,
"fps": 25.0,
"codec": "h264",
"frameCount": 42,
"frames": [
{ "index": 1, "time": 12.48, "timecode": "00:00:12.480", "key": "0001-lecture-00001.jpg",
"url": "https://api.apify.com/v2/key-value-stores/.../records/0001-lecture-00001.jpg", "bytes": 98211 }
],
"contactSheetUrl": "https://api.apify.com/v2/key-value-stores/.../records/0001-lecture-contact-sheet.jpg"
}

A video that cannot be downloaded or decoded gets an error field instead and is not charged.

Pricing

EventPriceWhat counts
frame$1 per 1,000one extracted frame
scene-minute$1 per 1,000only in scenes mode: one started minute of video analysed for scene changes

Plus Apify's standard start fee of $0.05 per 1,000 runs. The contact sheet is free. The run stops before it would exceed your maximum charge per run.

Open source: github.com/AndriyVK/-apify-document-tools

Use with AI agents and code

  • MCP (Claude, Cursor, VS Code, any MCP client): add https://mcp.apify.com?tools=ai_admin/video-frame-extractor as an MCP server — the agent gets one tool with this Actor's input schema and pays per use through your Apify account.
  • One HTTP call that returns the results:
curl -X POST "https://api.apify.com/v2/acts/ai_admin~video-frame-extractor/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"sources": [{"url": "https://api.apify.com/v2/key-value-stores/FloomuI2DrQCJazY8/records/video-en.mp4"}], "mode": "count", "frameCount": 6, "format": "jpg"}'

Limits

  • Direct file links only (no YouTube, TikTok or other page links). Maximum 2 GB per file.
  • Scene detection compares brightness and colour between frames: slow fades may produce no frame; lower the sensitivity.