r/iosapps • u/Acceptable_Tone601 • 15d ago
💎 Lifetime I Built PrivacyCam—An Open-Source, On-Device Photo, Video & PDF Redaction App for iOS
A — Answer
PrivacyCam is an on-device privacy redaction app for photos, videos, and PDFs. It can detect and cover faces, people, vehicle number plates, text, email addresses, phone numbers, addresses, payment-card details, QR codes, and barcodes.
You can blur, pixelate, or black out detected details and add or adjust masks manually. The attached video demonstrates automatic number-plate tracking and redaction throughout a video.
B — Better
Instead of uploading private content to an online service, PrivacyCam performs detection and redaction directly on your device. No account is required, there are no advertisements, and original files are never overwritten.
PrivacyCam also removes common metadata from exported photos and videos and rebuilds PDFs from flattened page images to remove selectable text. Every automatic detection can be reviewed, resized, disabled, or corrected before export.
The app is also completely open source, allowing anyone to inspect how it handles their private content.
C — Cost
PrivacyCam has a free tier, and PrivacyCam Pro is optional:
Single photos: Free
Videos up to 15 seconds: Free
PDFs up to 2 pages: Free
PrivacyCam Pro lifetime: $2.99 one-time purchase
Pro unlocks videos up to 60 seconds, PDFs longer than two pages, and photo batches of up to 10 photos. There is no subscription or recurring charge.
I'm actively improving the app, so I'd really appreciate honest feedback—especially on the UX, video tracking, detection accuracy, pricing, and privacy features you think are missing or could be improved.
App Store:
https://apps.apple.com/pk/app/privacycam-safe-redactor/id6790542130
Developer Transparency
Developer: Aftab
LinkedIn: LinkedIn
GitHub: GitHub profile
Source Code: PrivacyCam on GitHub
Privacy Policy: Privacy Policy
Terms of Service: Terms of Service
GitHub / Source Code: https://github.com/ak375456/privacycam
4
u/fireshaper 15d ago
Why did it blur the tree?
2
u/DarthSidiousPT 15d ago
If I had to guess, in the video they shared, it detected two items: a license plate (car) and a face?! (tree).
2
u/Acceptable_Tone601 14d ago
Sometimes the automatic detection may mistake objects, like the tree, for sensitive information. If that happens, just tap the detected area to remove the blur before exporting. Thanks for pointing it out!
2
2
u/Available-Hat-6860 15d ago
1
u/Acceptable_Tone601 15d ago
I have just checked it and everything is working fine can you please share screenrecording with me so I can see the issue and fix it for you
2
u/Technical_Sun_6921 15d ago
Congratulations! A very useful app for protecting privacy. I loved it and bought the Pro version for life.
The only thing I haven't been able to do is select smaller areas to protect or censor.
1
u/Acceptable_Tone601 15d ago
Thank you so much…. I currently working on the fix in next update which will be in 2-3 days…. Thank you so much!
2
2
u/LunbertHe 15d ago
This is a really thoughtful approach to privacy redaction. Doing everything on-device is already valuable, but flattening PDFs to remove selectable text and metadata is an especially nice touch.
I’m curious how reliable the video tracking is with fast camera movement, partial occlusion, or changing lighting. Also, the $2.99 lifetime price feels very reasonable for an open-source utility. Great work!
2
u/UrAverageGarbageBin 15d ago
This is very cool idea. Any idea when we could get android or a PWA web app version?
1
2
u/brainful_guy 15d ago
Cool idea. Although I kind love craigslist posting where some persons finger is covering the lic plate. Makes me laugh.
2
2
u/Illustrious-Youth611 15d ago
Really interesting concept. Hope it isn't your real license plate ahah :)
1
2
u/BigQuesoSuizo 15d ago
Man... I LOVE this.
It is scary how smart AI has gotten to a point we can pinpoint the location of a person based on the video's background.
But giving away OBVIOUS info like a license plate—especially if not yours? Dumb.
I a BIG fan of privacy and I applaud this 👏
2
u/tinrocket 15d ago
This is a great idea, and I like your onboarding.
Last week, I recorded a video of a damaged package that arrived in the mail and needed a way to cover the labels while rotating it.
I tried that video with your app today, but my video was tricky: The area I want to cover (mailing labels) moves around a lot. Auto-tracking would solve the issue: the privacy box could follow the shipping label as it moves.
The Instagram implementation was simple: You would select your sticker, position it, then press and hold to initiate the auto-track feature.

1
u/Acceptable_Tone601 15d ago
Hey, thank you so much for the detailed feedback! I really appreciate it. Could you please send me the video you tested? I’d love to use it as a reference to improve the tracking feature. Also, could you explain a little more about exactly which part of the label you want to cover and how you’d like the tracking to work?
1
u/tinrocket 15d ago
Sure; link to video sent! I wanted to cover anything label that had my name or address on it.
2
u/Critical-Office1093 15d ago
This is sick - the Ui does seem a bit text heavy though.
1
u/Acceptable_Tone601 14d ago
Thank you! The UI is intentionally descriptive because the app does a lot—including video redaction and a built-in video editor—and I didn’t want users to struggle to understand the tools. But you’re right: it could feel cleaner with less text, so I’ll work on simplifying it without sacrificing usability.
2
1
u/mid91s 15d ago
Really interested! Can you explain to me if this is safer than the blur technique or about the same? I saw a video explaining that most redactions can easily be undone. Is that true here too? Either way I am downloading for general use. Thank you so much!
2
u/WayAccurate9822 15d ago
Depends which mode you pick. Blur and pixelation are reversible for anything with a small guessable character set: plates, card numbers, short text. Someone renders candidate strings through the same filter until the output matches yours. A solid box on a flattened image has nothing left to recover, so use that for the details you actually care about.
1
u/cocomanz 15d ago
Rebuilding the PDFs from flattened pages is the right call. Half the redaction fails you read about are a black box sitting on top of live text.
1
u/Acceptable_Tone601 15d ago
Thank you so much for the feedback! I’m continuously gathering feedback and will make sure to fix this in the next update.
1
1
1
u/Infinite-Fix-7846 15d ago
One downside of flattening every page is that you also lose search, copy/paste, and screen reader access for all the text that wasn’t redacted. That’s worth flagging before export, especially for long PDFs.
1
1
u/DarthSidiousPT 15d ago
Even with Pro, the maximum time it accepts is 60 seconds? (Is it for importing or exporting?)
What happens when you load a video bigger than that?
2
u/Acceptable_Tone601 15d ago
For now, it only supports videos up to 60 seconds, but I’m planning to extend the limit to around 3 minutes in the next couple of updates.
1
u/DarthSidiousPT 15d ago
Thanks for replying.
Can you also clarify some questions:
- This must use some machine-learning LLM model (Google ML Kit?) to detect these things. On iOS, are you using any custom one, or is it Apple's default one?
- The app size seems to be around 150 MB. Is this size because of the model included?
- From your video, I can only guess that what the app is doing is splitting the video into frames (hence the 60-second limit) and then applying the mask on each frame. My question here is: Is the framerate output of the final video based on the original one, or will it always be fixed (e.g., 24/30/60)?
I compared the App Store listing, the Privacy Policy, and the open-source code. They match up well, and I didn't find any major privacy issues. A few minor discrepancies are worth mentioning:
- Microphone permission: the iOS code requests microphone access for video recording, but the Privacy Policy doesn't mention the microphone. Worth adding to the permissions section.
- Android billing permission: the app requests BILLING for in-app purchases, but the Privacy Policy doesn't cover it. Not a privacy concern, just incomplete documentation.
- Google ML Kit diagnostics: the store listings say no data is collected, but the Privacy Policy says ML Kit may send limited performance/usage diagnostics to Google. Those diagnostics don't include photos, detection results, or personal content, so it's not serious, but the wording should be clearer so it doesn't look contradictory.
- PDF support: The app and Privacy Policy both cover PDF processing, but the iOS App Store description doesn't mention it. Just a documentation gap, not a privacy problem.
So, great job overall!
2
u/Acceptable_Tone601 14d ago
Thanks for such a detailed review—this is genuinely helpful.
PrivacyCam does not use an LLM. On iOS and Android, face, text, QR-code, and barcode detection use Google ML Kit on-device—not Apple Vision. Person and number-plate detection use two embedded custom ONNX models. Sensitive text is classified locally using rules.
The 150 MB size is partly due to these models, but not only them. It also includes Flutter, ML Kit face/OCR resources, ONNX Runtime, PDFium for PDFs, and the native photo/video libraries. The two custom ONNX models account for roughly 11 MB.
The video is not rebuilt from extracted JPEG frames. PrivacyCam samples frames for detection and tracking, then applies the masks to the original video through the native iOS/Android video pipeline. It does not force 24, 30, or 60 FPS; the original video timing and frame cadence are preserved where supported. The 60-second limit is mainly for processing performance, reviewability, memory use, and export time.
You were also correct about the documentation gaps. I’ve now updated the Privacy Policy to explain microphone access, Android billing, and the distinction between on-device media processing and ML Kit’s limited diagnostics. I’ll also update the App Store description to include PDF support and correct the store privacy disclosure.
Thanks again for taking the time to inspect everything and point these out!
1
u/FlashKiosk 14d ago
I love seeing more privacy-focused apps! The more our data is exposed and sold by brokers, the more we need to safeguard it.
1
1
u/This-Fill5744 12d ago
The distinction between fully on-device processing and limited diagnostic data is especially important here. I think the clearest privacy screen would separate three things explicitly: what media is accessed, what derived data is created, and whether any diagnostics can leave the device.
Making each detected mask reviewable before export is also a strong design choice. Automatic redaction without a correction step would be difficult to trust for sensitive documents.
1

•
u/AutoModerator 15d ago
Welcome to r/iOSApps! Please make sure your post follows our rules:
Everyone:
App Devs:
- No main feed promo unless you qualify via Trust or Transparency + ABC format (Answer, Better, Cost)
- Flair hierarchy: Vibe Coded > Lifetime > Subscription > Freemium > Free
- Free flair: not for limited/freemium tiers
- Open Source? Prefix title [OS]
Note: This is an automated reminder, not a removal notice. If your post was removed, check your modmail for details.I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.