Allen Lee’s open-source SCM (Screen Memories) is a macOS app for searching a local photo and video library without uploading the media. Its most useful distinction is between finding a file and finding a moment: it indexes video scenes so a visual query can open the matching shot at its timecode.

The app offers five different retrieval paths rather than asking one model to do everything:

  • Files and scenes: on-device vision embeddings rank whole images and sampled video segments against plain-language queries.
  • OCR and dialogue: Tesseract finds visible words; Whisper transcribes spoken lines for literal search.
  • Optional local chat: a llama.cpp sidecar answers over extracted filenames, OCR, and dialogue with links back to the evidence. It is off until enabled.

The README also describes watched-folder imports, content-hash deduplication, and background re-embedding when the vision model changes. That is the real software problem here: keeping an evolving local index usable while the expensive work happens behind the search interface.

“Every frame” is a headline, not the indexing method. The documented Balanced preset budgets 8–128 scene segments at roughly 30 seconds per sampling point, with denser modes available. A brief event between selected frames can be missed. Initial model downloads and video indexing also cost time and disk; I have not benchmarked either on a large library.

The Hacker News discussion adds practical questions: postalcoder suggests Apple’s Vision framework instead of Tesseract for a Mac-only OCR path; hn3ufz62f7, drawing on a similar CLIP build, warns that sampling frequency dominates indexing time; Jeeetendra asks how often the default misses a short-lived shot. Those are questions and user reports, not measured comparisons of SCM itself.