@omar_f · 6/17/2026
Day 7 of building TetherShot in public — today's a war story.
Goal: pixel-perfect iPhone screenshots on a Mac.
My first design was the obvious one: AirPlay-mirror the phone, then capture the mirrored window with ScreenCaptureKit. Tested it. Looked great.
Then I started an actual capture and the window went solid black.
Turns out on macOS Tahoe, AirPlay-mirrored windows blank out the moment a capture context is active. The OS kills the exact pixels you're trying to record. No error, no warning, just black frames.
The fix was to stop mirroring and go a layer deeper — read the iPhone's framebuffer directly over Apple's dev-services RemoteXPC tunnel. Real 1179x2556 grab, and it works even with the phone locked.
Takeaway: a "clever" screen-scrape that the OS quietly sabotages is worse than a lower-level path that's boring and correct.
MIT + local-first, shipped over npm:
https://github.com/apoorvdarshan/TetherShot

0 comments
Join Peerpitch to join the conversation