โ† All Articles
Home Video Guides

VHS Home Video Scene Detection With PySceneDetect

Published May 8, 2026  ยท  6 min read

A typical VHS tape recorded over a decade of family life has hundreds of distinct moments buried in it โ€” birthday parties, holidays, random Tuesday afternoons in the backyard. Finding a specific one means scrubbing through an hour of footage hoping you land in the right place.

Scene detection solves this. It automatically identifies where one scene ends and another begins โ€” usually at camera cuts or significant changes in the frame โ€” and splits your footage into individual clips. Instead of one 90-minute file, you get 200 clips, each a distinct moment.

What Is PySceneDetect?

PySceneDetect is a free, open-source Python tool that analyzes video frame-by-frame and detects scene boundaries. It works by looking for sudden changes in color, brightness, or content between frames โ€” the kind of change that happens when someone stops filming and starts again.

For VHS footage this works surprisingly well, even accounting for tape noise and the slightly washed-out look of old video.

Installation

pip install scenedetect[opencv]

You'll also need ffmpeg installed. On Mac: brew install ffmpeg. On Windows, grab it from ffmpeg.org and add it to your PATH.

Basic Scene Detection

To detect scenes in a video file:

scenedetect -i "1990_summer.mp4" detect-content list-scenes

This outputs a CSV file listing the start time, end time, and duration of every detected scene. For a 90-minute tape you might get 150โ€“300 scenes depending on how actively the camera was used.

Splitting Into Clips

To actually split the video into individual clip files:

scenedetect -i "1990_summer.mp4" detect-content split-video

This creates a folder of MP4 files, one per scene. Each file is named with its scene number and timestamp, like 1990_summer-Scene-001-00-00-00.mp4.

Tuning for VHS Footage

VHS tape noise can cause false positives โ€” random frame glitches getting detected as scene changes. A few adjustments help:

scenedetect -i "1990_summer.mp4" detect-content \
  --threshold 35 --min-scene-len 3s split-video
  • --threshold 35 โ€” higher values require a bigger visual change to trigger a scene break (default is 27; 30โ€“40 works well for VHS)
  • --min-scene-len 3s โ€” ignores any "scene" shorter than 3 seconds, filtering out noise glitches

What to Do With the Clips

Once you have individual scene clips, you can:

  • Run Whisper on each one for per-scene transcription
  • Extract a thumbnail frame for a visual gallery
  • Name and organize clips manually by person or event
  • Share specific clips directly without sending the full tape

Combining scene detection with transcription (see our Whisper guide) gives you a fully indexed archive โ€” every moment findable by what was said or shown.

The Time Investment

Scene detection itself is fast โ€” a 90-minute tape processes in a few minutes on most modern computers. The manual step is reviewing the output and naming things meaningfully. For a collection of 20โ€“30 tapes, expect to spend a few evenings getting everything organized.

Skip the Command Line

If you have the time and hardware, scene detection is a genuinely satisfying project โ€” there's something magical about watching a pile of old tapes become a searchable archive. If you'd rather skip straight to the organized gallery, Tape Memories runs scene detection, transcription, and AI descriptions automatically on every tape you upload. No setup required.

Try It Free at Tape Memories โ†’