Skip to content
Edit & repurpose

PySceneDetect: find every cut in a video automatically

A free, BSD-3-Clause command-line tool that finds the cuts in a video, then splits it into clips or exports the cut list [2][1].

Does
Finding cuts and splitting footage into shots
Best for
Travel, event and tutorial creators sorting long footage
Cost
Free (BSD-3-Clause) [1]
Runs
Locally: Python, Windows installer or Docker
Updated 2 Nov 2026

PySceneDetect scores how much each frame differs from the one before and marks a cut where the score passes a threshold [3].

What it does

Licence
BSD-3-Clause [1]
Latest release
v0.7.2, 11 October 2026 [2]
Detectors
detect-adaptive (handles camera movement), detect-content (fast cuts), detect-threshold (fades), detect-hash, detect-hist [3]
Outputs
Split video files, CSV scene lists, still images [2][3]
Editor exports
EDL, Final Cut Pro XML (FCP7 or FCPX), OpenTimelineIO [3]
Install
pip; Windows MSI or portable ZIP; Docker image with ffmpeg and mkvmerge [2]

Integrations

InterfaceStatusDetail
MCP serverMCP · CommunityCommunity wrappers
Command lineCLI · Built inOfficial project CLI
API / libraryAPI · Built inPython API

Requirements and setup

  • Python and pip [2].
  • ffmpeg or mkvmerge to split videos [2].

Licence, cost and privacy

  • Runs on your computer: command line, Python or Docker [2].

Limitations

  • It measures visual change only, not speech or which shots are usable [3].
  • Fades need detect-threshold; detect-adaptive and detect-content catch fast cuts [3].
  • Global options such as -i go before commands, and each command can appear once [3].
Quick start

Quick start

Install, then point it at a file. With no detector named, the default is used [3].

Copied from the documentation · source [2]
pip install scenedetect --upgrade
Copied from the documentation · source [3]
scenedetect -i video.mp4 split-video
Copied from the documentation · source [3]
scenedetect -i video.mp4 list-scenes save-images
Copied from the documentation · source [3]
scenedetect -i video.mp4 detect-adaptive
Copied from the documentation · macOS, Linux (Docker) · source [2]
docker run --rm -v "$(pwd):/files" ghcr.io/breakthrough/pyscenedetect -i /files/video.mp4 split-video -o /files
Assembled from documented options, not printed in the docs · source [3]
scenedetect -i video.mp4 detect-adaptive save-otio

list-scenes save-images writes a scene CSV plus frames from the start, middle and end of each scene [3]. save-otio writes a timeline that many editors import [3].

Uses for vloggers

  • Split a screen recording or event video into shots [2].
  • A contact sheet of every shot for picking B-roll [3].
  • Cut lists for your editor as EDL, FCP XML or OTIO [3].
  • Scene boundaries of a finished video, before clipping Shorts.

Workflows that use it

Some setupAI travel vlog edit

Detect shots in raw GoPro or phone clips, choose the story order, join the clips with FFmpeg, and keep GPS and faces under your control.

PySceneDetectFFmpeg / ffprobeAI video editing skill (znyupup)whisper.cpp

Alternatives

Edit & repurposeFFmpeg / ffprobe

Cut, transcode, crop, concatenate, subtitle and inspect video in scripts

Free codeOn your computerDeveloperCustom licence
MCP · CommunityCLI · Built inAPI · Built in
Edit & repurposeFunClip

Transcribe and perform speech-selected cuts from spoken footage

Free codeOn your computerSome setupMIT licence
CLI · Built inAPI · Built in
Edit & repurposeOpusClip

Turn long videos into selected social clips with captions and reframing

Free plan listedCloudNo coding
MCP · OfficialCLI · None foundAPI · Official

Sources

  1. raw.githubusercontent.com/Breakthrough/PySceneDetect/main/LICENSE fetched 2 Nov 2026
  2. raw.githubusercontent.com/Breakthrough/PySceneDetect/main/README.md fetched 2 Nov 2026
  3. scenedetect 🎬 Command: PySceneDetect 0.7.1 documentation fetched 2 Nov 2026