Kanto Labs
Video Scene Detection icon

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.

$0.018 per video minute$0.002 per clip (optional)Failed inputs are free

What it does

Video Scene Detection, in short

  • Every shot with start and end time, frame numbers, SMPTE timecode and its transition: cut, dissolve or fade
  • 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

Automation buildersSame field names on every row and a flat shots array, so n8n, Make, Zapier or an AI agent can loop over shots without parsing.
Ad and UGC researchersTear down your own or your client's ads shot by shot: the shot sheet and cuts per minute show the pacing at a glance.
Video editorsImport the EDL to get every cut on your timeline, or split an archive film into one clip per shot.
AI dataset buildersCut long videos into clean single-shot clips, or keep one keyframe per shot for captioning.

Example

Input and output

One dataset row per result, downloadable as JSON, CSV or Excel, or read through the Apify API.

Input
{
  "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.

Output (one row)
{
  "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.

$0.018video minute scanned · $18.00 per 1,000

No subscription, no monthly minimum. Apify platform compute is included in the price.

Example costs
You runYou 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
Worked example. You scan a 10-minute 1080p video with 60 shots and also split it into clips.10 minutes × $0.018 = $0.18
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.

Run it on Apify