The cinematic FPV workflow — from .mp4 to delivery in 30 minutes

By Robin Cretinon · April 27, 2026 · 15 min read

Yesterday I came back from a 90-minute FPV freestyle session in the Vercors with my Avata 2 and a Hero 13 helmet cam. By the time my coffee was done, I had a 5-minute cinematic reel exported, color graded, and ready to upload. This is exactly how. No timeline scrubbing, no per-clip optical stab, no LUT panel hunting. Just the recipe I converged on after a year of FPV editing on Mac.

Spoiler: 80% of the time savings comes from not editing in a traditional NLE for the stabilization step. Final Cut and DaVinci are great for cutting and grading. They're slow for stab. So we do stab + grade in Unshake, then cut in Final Cut. The split saves ~45 minutes per session.

Pre-flight: how I record

The 30-minute edit time depends on recording smart. My Avata 2 is set to 4K 100p D-Log M, RockSteady off, HorizonSteady off. The Hero 13 is set to 5.3K 60p, 8:7 sensor mode, HyperSmooth off, GP-Log on. Both record raw, both have full gyro telemetry embedded.

If you record with EIS on, the in-camera stab eats some flexibility. You can still post-stab on top, but the result is harder to fine-tune. Recording flat = max flexibility in post.

Step 1 — Import everything (2 minutes)

I plug both SD cards into a card reader, copy DCIM/ contents into a session folder on my Mac. Naming convention: 2026-04-26_vercors_freestyle/raw_dji/ and raw_gopro/. Two folders, raw originals untouched.

Then I open Unshake, drag both folders in. The app builds a queue of all the clips, auto-detects each camera (Avata 2, Hero 13), reads their gyro streams, and shows the first frame of every clip in the sidebar.

Time so far: 2 min. The queue has ~25 clips: most are 10-30s freestyle cuts, a few are longer establishing shots.

Step 2 — Cull the bad takes (5 minutes)

I scroll through the queue. Each clip plays at full speed in the preview. Bad takes (camera fell off, missed line, framing wrong) get deleted from the queue with backspace. ~10 clips survive.

This is where Unshake's smart segments are useful: instead of deleting a whole clip, I can mark IN/OUT points (J/K/L playback, I/O markers — same shortcuts as Final Cut). For the 60s establishing shot I want the middle 8 seconds; I scrub to 25s, hit I, scrub to 33s, hit O. Done. The export will only render those 8 seconds.

Step 3 — Set per-clip stabilization (5 minutes)

Now the per-clip stab choices. Two recipes I keep going back to:

Cinematic flight (slow proxy, sweeping camera):

Freestyle / racing (rolls, dives, fast):

I select all the cinematic clips in the queue, apply the cinematic recipe with one click. Same for freestyle. ~5 minutes to set every clip.

Step 4 — Verify the previews (3 minutes)

Now I scrub the queue. Each clip preview shows the stabilized result with the full recipe applied (stab + horizon + motion blur + LUT). For the cinematic flights, I'm watching for: does the horizon really stay flat? Is the motion blur natural at 4×? For freestyle, the question is: does the 50% horizon lock feel right or should I drop it to 30% on the rolls?

This step catches recipe mismatches before export. The preview is real-time GPU on Apple Silicon — no render wait — so I can iterate fast.

Step 5 — Batch export (10 minutes, hands-off)

Hit Export Queue. ProRes 422, .mov, full resolution (4K for the Avata, 5.3K downscaled to 4K for Hero). Walk away. Make a coffee.

The Mac batches with Metal GPU acceleration. On my M3 Max, ~10 clips at 4K with motion blur takes about 8-12 minutes. The exports land in 2026-04-26_vercors_freestyle/stabilized/ with the same filenames.

Step 6 — Cut in Final Cut Pro (5 minutes)

Now the creative cut. I import the stabilized/ folder into Final Cut, drag clips onto the timeline in roughly the order I want, slip-edit a couple of in/out points, drop a music track underneath, and add a 30-frame fade-in/fade-out on each clip. That's it.

Because the stabilization, color grading, and motion blur are already baked into the ProRes files, Final Cut just plays them back. No render-on-the-fly. Scrub speed is real-time. Edits are instant.

5 minutes for a rough cut, maybe 5-10 more for trimming and music timing. Budget 10 minutes total.

Step 7 — Master export (5 minutes)

Final Cut master export to H.265 / 4K / 10-bit / 100 Mbps for YouTube delivery. ~5 minutes on M3 Max. Upload directly from Final Cut to YouTube. Done.

Total time accounting

If you skip the master export and just deliver from Unshake's outputs (for Instagram Reels, social), the total drops to 20 minutes hands-on.

Why this is faster than working in Final Cut alone

In Final Cut alone, you'd:

  1. Import all clips (slow when DJI/GoPro proxies aren't pre-rendered).
  2. Apply stabilization per clip (Final Cut's optical stab is slow and inferior to gyro stab).
  3. Apply LUTs per clip (manual setup unless you make a Final Cut effect preset).
  4. Export and re-import for motion blur (no built-in AI motion blur).
  5. Cut.
  6. Master.

The first 4 steps take 1-2 hours for a 25-clip session. By moving stab + LUT + motion blur to a dedicated tool that batches them with Metal GPU, those 1-2 hours collapse to 25 minutes.

What this workflow doesn't cover

Unshake is for the part of the workflow most editors hate: stabilization, technical color, and batch processing. Get that out of the way fast, then enjoy the creative cut.


Unshake on the Mac App Store — Mac-native gyro stabilizer with AI motion blur, batch queue, real-time GPU preview. Built by an FPV pilot.

Related: D-Log M color grading on Mac · Stabilize GoPro footage on Mac · FPV Stabilization