v1 · ios · on-device

Handheld video,
shaky made still.

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.

Two-pass · 60–90s clips H.264 · audio preserved Offline · no telemetry
Vision · VNTranslational No network · 0 bytes sent
Stabilize
PRO
All time
142
clips
smoothed
Private by design

Everything stays on your iPhone

No upload, no account, no tracking. Stabilization runs on-device.

Choose a clip
§ 01 · The pipeline

A two-pass Vision + AVFoundation pipeline. Same one Apple's frameworks ship with.

003 STEPS · 0 SERVERS
// 01 — Analyze

Read every frame

AVAssetReader walks the clip frame by frame. Each consecutive pair feeds Vision's VNTranslationalImageRegistrationRequest to measure the camera's micro-shake in (x, y).

// 02 — Smooth

Filter the trajectory

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".

// 03 — Render

Re-encode locally

CIImage applies the per-frame correction, AVAssetWriter emits H.264, audio passes through untouched. Output saves to Photos in a single tap.

§ 02 · The architecture

Your footage never leaves the device.

0 BYTES · 0 ACCOUNTS
⏚ Offline
Network calls made
0 Reading the source, running Vision, writing the output — all on the device's Neural Engine.

No upload. No account. No tracking.

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.

  • NetworkZero outbound connections. No analytics SDKs.
  • AccountNone. The app opens. You stabilize.
  • PhotosRead access only when you pick a clip. Write only when you save.
  • SourcePipeline is open about what it does — see the README.
§ 03 · The knobs

Three sliders. That's the entire dashboard.

FEW · OPINIONATED
Smoothing radius

How steady, in frames

4 — 80

Larger windows mean a tripod-still result; smaller windows preserve quick intentional pans. The default usually feels right.

Strength

Blend back toward original

0% — 100%

Slide left to leave some natural motion in the shot. Slide right to commit fully to the stabilized trajectory.

Edge crop

Hide the borders

0% — 20%

Large corrections expose the frame's edges. Edge crop trims them away — the only tradeoff in the whole pipeline.

§ 04 · The deal

Try every feature. Pay once. Done.

NO SUBS

Pricing

One purchase. Yours forever.

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.

Stabilize Pro
$6.99 one-time · usd
Lifetime access. Family Sharing supported.
  • Unlimited exports in full quality
  • All controls unlocked
  • Future updates included
  • Stay logged out. Stays yours.
Get Stabilize Pro →
§ 05 · The fine print

Questions, briefly.

Does Stabilize work without an internet connection?

Yes — the entire pipeline is local. You can stabilize footage on a plane, on a hike, anywhere. The app makes zero network requests.

What clip lengths does it handle?

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.

Will it stabilize rotation and roll, not just translation?

The v1 motion model is translational only. Roll and pitch shake remain. A homographic upgrade is on the roadmap.

What devices does it run on?

iPhone running iOS 17 or later. The app uses @Observable, PhotosPicker, and async AVAsset APIs.

Is the audio kept?

Yes. Stabilize re-encodes the video track and copies the audio through untouched.