Media · Apify actor
A shot list with cut timecodes for any video file
Find every shot in a video and get its start and end time, frame numbers, SMPTE timecode and how it begins: a hard cut, a dissolve or a fade. Each video also gets one keyframe per shot, a shot sheet image, pacing stats and its shot list as CSV, JSON and a CMX3600 EDL for Premiere Pro, DaVinci Resolve or Avid. Optionally, split the video into one clip per shot without re-encoding.
What it does
Video Scene Detection, in short
- Every shot with start and end time, frame numbers, SMPTE timecode and its transition:
cut,dissolveorfade - Camera pans, people moving and camera flashes are not counted as cuts
- One keyframe per shot and one shot sheet image (a storyboard of the whole video), included in the price
- Pacing stats: shot count, cuts per minute, average and median shot length
- CSV, JSON and a frame-accurate CMX3600 EDL file per video
- Optional: one clip per shot, cut with stream copy (fast, original quality)
Who it's for
Built for
shots array, so n8n, Make, Zapier or an AI agent can loop over shots without parsing.Example
Input and output
One dataset row per result, downloadable as JSON, CSV or Excel, or read through the Apify API.
{
"videoUrls": ["https://your-bucket.s3.amazonaws.com/ads/spring-promo.mp4"],
"splitClips": false
}From a real run on the public-domain 1953 trailer Phantom From Space (98 s, 43 shots), trimmed to one shot.
{
"fileName": "PhantomFromSpace.mp4",
"status": "ok",
"durationSeconds": 98.06,
"shotCount": 43,
"hardCutCount": 36,
"dissolveCount": 6,
"averageShotSeconds": 2.28,
"cutsPerMinute": 25.7,
"csvUrl": "https://api.apify.com/v2/key-value-stores/.../records/...shots.csv",
"edlUrl": "https://api.apify.com/v2/key-value-stores/.../records/...shots.edl",
"shotSheetImageUrl": "https://api.apify.com/v2/key-value-stores/.../records/...shot-sheet.jpg",
"billedMinutes": 2,
"shots": [
{ "index": 2, "start": 4.304, "end": 7.207, "duration": 2.903,
"startSmpte": "00:00:04:09", "endSmpte": "00:00:07:06",
"transition": "cut", "cutScore": 0.5165,
"keyframeUrl": "https://api.apify.com/v2/key-value-stores/.../records/...shot0002-000006000ms.jpg" }
]
}Pricing
Pay per result. Failures are free.
No subscription, no monthly minimum. Apify platform compute is included in the price.
| You run | You pay |
|---|---|
| A 30-second ad | $0.018 |
| 100 ads of 30 seconds each | $1.80 |
| A 10-minute 1080p video | $0.18 |
| The same video split into 60 clips | $0.30 |
60 clips × $0.002 = $0.12
Total = $0.30
Not charged:
- Keyframes, the shot sheet image and the CSV, JSON and EDL files
- Refused links, failed downloads and unreadable files
- Shots that cannot get a clip of their own (no video keyframe near their start)
Videos up to 1080p count 1 video minute per started minute; bigger frames count one video minute per started 2.2 megapixels, so 1440p counts 2 and 4K counts 4. Each row shows its billingMultiplier. You can set Maximum cost per run in the run options and the actor stops cleanly when it is reached.
FAQ
Questions
Which editors can import the EDL?
Any editor that reads CMX3600: Premiere Pro, DaVinci Resolve, Avid Media Composer, Final Cut Pro (via a converter) and others. The file name is in the FROM CLIP NAME comment, so the editor can relink the media.
Why did I get too many or too few shots?
Raise the cut threshold (for example to 0.2-0.3) for fewer shots, or lower it (0.06-0.1) for very dark or low-contrast footage. Raise the minimum shot length to merge rapid montages. Screen recordings report page changes as cuts.
Why does a 4K video cost more per minute?
Decoding a 4K frame takes about four times the work of a 1080p frame, and every frame must be decoded to find frame-accurate cuts. If you have a 1080p proxy of a 4K edit, run that instead: the timecodes are identical.
Can I use YouTube, TikTok or Instagram links?
No. Their terms forbid downloading. Use direct links to video files you are allowed to process: your storage, S3/R2/GCS, a CDN, Dropbox or Google Drive.
How long can a video be?
Up to 300 minutes (180 by default) and 4 GB. A 10-minute 1080p video takes about 4-5 minutes to process.
Try Video Scene Detection on Apify
Apify's free plan includes monthly platform credit you can use to try it. Also callable from AI assistants through the Kanto Labs MCP server.
Other Kanto Labs tools
Video Frame Extractor
Scene-change keyframes, thumbnails or one frame every N seconds, plus a contact sheet.
Video to LLM Context
Scenes, one keyframe per scene and the transcript per scene, as a ready-to-paste prompt block.
Video to Slides
Every unique slide from a lecture or webinar video, as images, text and one PDF.