Show HN: Real-time privacy protection for smart glasses
Hacker News (score: 16)Description
How it works: You can replace a raw camera feed with the filtered stream in your app. The filter processes a live video stream, applies privacy protections, and outputs a privacy-compliant stream in real time. You can use this processed stream for AI apps, social apps, or anything else.
Features: Currently, the filter blurs all faces except those who have given consent. Consent can be granted verbally by saying something like "I consent to be captured" to the camera. I'll be adding more features, such as detecting and redacting other private information, speech anonymization, and automatic video shut-off in certain locations or situations.
Why I built it: While developing an always-on AI assistant/memory for glasses, I realized privacy concerns would be a critical problem, for both bystanders and the wearer. Addressing this involves complex issues like GDPR, CCPA, data deletion requests, and consent management, so I built this privacy layer first for myself and other developers.
Reference app: There's a sample app (./examples/rewind/) that uses the filter. The demo video is in the README, please check it out! The app shows the current camera stream and past recordings, both privacy-protected, and will include AI features using the recordings.
Tech: Runs offline on a laptop. Built with FFmpeg (stream decode/encode), OpenCV (face recognition/blurring), Faster Whisper (voice transcription), and Phi-3.1 Mini (LLM for transcription analysis).
I'd love feedback and ideas for tackling the privacy challenges in wearable camera apps!
More from Hacker
Show HN: I built a tool to assist AI agents to know when a PR is good to go
Show HN: I built a tool to assist AI agents to know when a PR is good to go I've been using Claude Code heavily, and kept hitting the same issue: the agent would push changes, respond to reviews, wait for CI... but never really know when it was done.<p>It would poll CI in loops. Miss actionable comments buried among 15 CodeRabbit suggestions. Or declare victory while threads were still unresolved.<p>The core problem: no deterministic way for an agent to know a PR is ready to merge.<p>So I built gtg (Good To Go). One command, one answer:<p>$ gtg 123 OK PR #123: READY CI: success (5/5 passed) Threads: 3/3 resolved<p>It aggregates CI status, classifies review comments (actionable vs. noise), and tracks thread resolution. Returns JSON for agents or human-readable text.<p>The comment classification is the interesting part — it understands CodeRabbit severity markers, Greptile patterns, Claude's blocking/approval language. "Critical: SQL injection" gets flagged; "Nice refactor!" doesn't.<p>MIT licensed, pure Python. I use this daily in a larger agent orchestration system — would love feedback from others building similar workflows.
Generate QR Codes with Pure SQL in PostgreSQL
Generate QR Codes with Pure SQL in PostgreSQL
Obelisk 0.32: Cancellation, WebAPI, Postgres
Obelisk 0.32: Cancellation, WebAPI, Postgres
Show HN: A Claude Code plugin that catch destructive Git and filesystem commands
Show HN: A Claude Code plugin that catch destructive Git and filesystem commands
No other tools from this source yet.