Dup uses perceptual hashing — it compares what your files look like, not their raw bytes.
It catches duplicates across:
→ Different codecs (H.264, H.265, ProRes)
→ Different resolutions (4K vs 1080p vs 720p)
→ Different containers (MOV, MP4, MKV)
→ Different file names
I built a macOS app that finds duplicate videos other tools miss.
Most duplicate finders compare file hashes. Same file = duplicate.
But what about the same video in 4K ProRes (2.1 GB) and 1080p H.264 (340 MB)?
To checksums, they're different. To your eyes, they're identical.
Built with:
→ Rust backend (Tauri 2)
→ Svelte 5 frontend
→ Perceptual video hashing via vid_dup_finder_lib
→ Perceptual image hashing via img_hash
→ Parallelized with rayon
→ Bundled ffmpeg for frame extraction
Everything runs locally. Nothing leaves your Mac.