Inspiration

Opening a new folder of video footage usually means spending hours scrubbing through clips to find the good takes, check audio, and write down notes. I wanted to build a tool that automates this tedious first step so editors can start actually editing right away.

What it does

Scrub acts as your automatic assistant editor. You point it at a folder of raw footage, and it automatically watches and listens to every clip. It checks for focus, exposure, and audio clipping, groups similar takes together, and creates a searchable transcript. It then grades the clips and tells you exactly why they were flagged, all happening 100% locally on your machine.

How I built it

I built Scrub using Python for the backend and Flask for the local web interface. For video and audio analysis, I used OpenCV, NumPy, and SciPy to measure technical metrics like exposure and audio levels. For transcribing the dialogue and making the footage searchable, I integrated faster-whisper for fast, offline speech-to-text processing.

Challenges I ran into

  • Processing large video and audio files locally without making the user wait forever.
  • Finding the right mathematical thresholds to accurately decide if a clip is "good" or "bad" based on focus and exposure.
  • Figuring out how to automatically cluster different takes of the exact same shot together.
  • Making the installation completely seamless so users just have to double-click a script to get started.

Accomplishments that I'm proud of

  • Building a tool that runs entirely offline, ensuring complete privacy for creators and their unreleased footage.
  • The take grouping feature, which puts multiple attempts at the same line side-by-side with the best one already picked.
  • Creating a transparent grading system- Scrub isn't a black box; it tells you the exact numbers behind why a clip was flagged.

What I've learned

I learned a lot about audio and video signal processing, specifically how to programmatically detect things like audio clipping, silence, and camera focus. I also learned how to package local AI models (like Whisper) to run efficiently on a user's machine without a complicated setup.

What's next for Scrub

  • Adding support for a wider variety of professional camera formats and codecs.
  • Improving the take clustering accuracy using more advanced visual and audio similarity checks.
  • Building direct plugin integrations for editing software like Premiere Pro and DaVinci Resolve so users don't even have to leave their editor to use Scrub.

Built With

Share this project:

Updates

Submission history