v1 · ios · on-device
Stabilize smooths shaky iPhone footage with a two-pass Vision pipeline that runs entirely on your device. No upload, no account, no subscription — just a sharper version of the clip you already shot.
No upload, no account, no tracking. Stabilization runs on-device.
AVAssetReader walks the clip frame by frame. Each consecutive pair feeds Vision's VNTranslationalImageRegistrationRequest to measure the camera's micro-shake in (x, y).
The raw camera path is integrated, then run through a centered moving average. The window size becomes smoothingRadius — the only knob between "still rocking" and "tripod".
CIImage applies the per-frame correction, AVAssetWriter emits H.264, audio passes through untouched. Output saves to Photos in a single tap.
Stabilize was built for the moment you realize a great shot is a wobbly shot. We didn't want to ask
you to trust us with that footage — so we didn't ask at all. The whole pipeline runs locally, in an
actor wrapped in Swift 6 strict concurrency.
Larger windows mean a tripod-still result; smaller windows preserve quick intentional pans. The default usually feels right.
Slide left to leave some natural motion in the shot. Slide right to commit fully to the stabilized trajectory.
Large corrections expose the frame's edges. Edge crop trims them away — the only tradeoff in the whole pipeline.
Pricing
The free version lets you stabilize and preview as much as you want. Unlock Pro when you're ready to save the results in full quality — and you'll never see a paywall again. No subscription, no "starter" tier, no ads, no upsell loop.
Yes — the entire pipeline is local. You can stabilize footage on a plane, on a hike, anywhere. The app makes zero network requests.
Stabilize was tuned for handheld phone clips — typically 5 to 90 seconds. Longer clips work but analyze the whole video before rendering, so memory and time scale linearly.
The v1 motion model is translational only. Roll and pitch shake remain. A homographic upgrade is on the roadmap.
iPhone running iOS 17 or later. The app uses @Observable, PhotosPicker, and async AVAsset APIs.
Yes. Stabilize re-encodes the video track and copies the audio through untouched.