Why Stabilization Matters
Shaky footage is one of the most common problems in video production. It happens when shooting handheld without a gimbal, recording while walking or driving, using long zoom lenses that amplify small movements, or simply holding a phone with unsteady hands. The result is distracting camera movement that makes the content look unprofessional and can even cause motion sickness in viewers.
Fortunately, modern software stabilization has become remarkably effective. Post-processing algorithms can analyze motion between frames, calculate the camera's movement path, and apply compensating transformations to smooth out unwanted shake. The best part: you do not need expensive editing software to do it.
This guide covers every approach to video stabilization, from free command-line tools to professional editing software, with step-by-step instructions for each method.

How Video Stabilization Works
All software stabilization follows the same fundamental process:
- Motion detection: The algorithm tracks visual features (corners, edges, high-contrast points) across consecutive frames to determine how the camera moved between each frame
- Motion estimation: The per-frame motion data is compiled into a camera motion path — a record of how the camera translated (moved), rotated, and zoomed over the duration of the clip
- Smoothing: The algorithm calculates a smoothed version of the motion path, removing high-frequency jitter while preserving intentional camera movements like pans and tilts
- Transformation: Each frame is repositioned, rotated, and optionally scaled to follow the smoothed motion path instead of the original shaky path
- Cropping: The repositioned frames no longer fill the full frame, so the output is cropped to remove the unstable borders. This means stabilized video has a slightly reduced field of view
Stabilization Methods Compared
| Method | Quality | Speed | Cost | Best For |
|---|---|---|---|---|
| FFmpeg (vidstabdetect/vidstabtransform) | Good | Fast | Free | Batch processing, automated workflows |
| Adobe Premiere Pro (Warp Stabilizer) | Excellent | Moderate | Subscription | Professional video editing |
| DaVinci Resolve (Stabilizer) | Excellent | Moderate | Free/Paid | Color-graded projects, pro editing |
| CapCut/InShot (Mobile) | Moderate | Fast | Free | Social media content, quick fixes |
| Gyroflow (Gyroscope data) | Excellent | Fast | Free | Action cameras, drones with gyro data |
Pro Tip: Stabilization works best when you shoot at a higher resolution than your delivery target. Recording in 4K and stabilizing to 1080p output gives the algorithm plenty of room to crop without losing your target resolution. For more on resolution strategies, see our 4K video conversion guide.
Method 1: FFmpeg Stabilization (Free, Command Line)
FFmpeg includes the vidstab library, which provides two-pass video stabilization. The first pass analyzes the motion; the second pass applies the correction.
Step 1: Analyze Motion (Detection Pass)
ffmpeg -i shaky.mp4 -vf vidstabdetect=shakiness=5:accuracy=15 -f null -
This creates a file called transforms.trf containing the per-frame motion data.
Key parameters:
shakiness(1-10): How shaky the video is. Higher values make the detector more aggressive. Default is 5accuracy(1-15): Higher values give more precise detection at the cost of speed. Use 15 for best results
Step 2: Apply Stabilization (Transform Pass)
ffmpeg -i shaky.mp4 -vf vidstabtransform=smoothing=10:crop=black:zoom=5 \
-c:v libx264 -crf 18 -preset slow \
-c:a copy -movflags +faststart stabilized.mp4
Key parameters:
smoothing(0-100): Number of frames to use for the moving average. Higher values produce smoother results but may remove intentional camera movements. 10-30 is the typical rangecrop—blackfills borders with black;keepkeeps the original border pixelszoom— Percentage to zoom in, compensating for the border crop. 5-10% is usually sufficient
One-Command Approach
You can combine both passes in a single command:
ffmpeg -i shaky.mp4 \
-vf "vidstabdetect=shakiness=7:accuracy=15:result=transforms.trf" \
-f null - && \
ffmpeg -i shaky.mp4 \
-vf "vidstabtransform=input=transforms.trf:smoothing=15:zoom=5" \
-c:v libx264 -crf 18 -preset slow \
-c:a copy -movflags +faststart stabilized.mp4
Smoothing Value Guide
| Smoothing Value | Effect | Best For |
|---|---|---|
| 5 | Light smoothing | Handheld with minor shake, preserving camera movement |
| 10-15 | Moderate smoothing | Walking shots, general handheld footage |
| 20-30 | Strong smoothing | Heavy shake, vehicle-mounted cameras |
| 40+ | Near-locked shot | Simulating tripod stability from handheld |
After stabilization, you may want to trim the beginning and end of the clip where stabilization artifacts are most visible. Use the video trimmer for precise cuts, or see our guide on how to trim and cut video.
Method 2: DaVinci Resolve (Free Professional Tool)
DaVinci Resolve includes a powerful stabilizer in its free version — no Studio license required.
Steps:
- Import your clip into the Media Pool
- Switch to the Color page (or Edit page)
- Select the clip in the timeline
- Open the Inspector panel (top right)
- Scroll to the Stabilization section
- Choose a mode:
- Perspective: Best for most footage (analyzes full 3D camera motion)
- Similarity: For footage with little perspective change
- Translation: Most aggressive, only corrects X/Y movement
- Click Stabilize
- Adjust Cropping Ratio and Smooth values as needed

DaVinci Resolve Tips
- Use Perspective mode first. If it produces warping artifacts (wavy lines, jello effect), switch to Similarity
- The Camera Lock option attempts to make the shot look like it was filmed on a tripod. Use it for static scenes
- Enable Zoom to automatically crop out the black borders
Pro Tip: When stabilizing footage in DaVinci Resolve, apply stabilization on the Edit page before switching to the Color page. If you apply it on the Color page, the stabilization uses the node pipeline which can interact unexpectedly with power windows and tracked masks. Edit page stabilization processes first, giving you a clean, stable base for grading.
- For best results, stabilize before applying color grading or effects
Method 3: Adobe Premiere Pro (Warp Stabilizer)
Premiere Pro's Warp Stabilizer is the industry standard for professional stabilization:
- Select your clip on the timeline
- Go to Effects > Video Effects > Distort > Warp Stabilizer
- Drag it onto the clip (or double-click)
- Premiere analyzes the clip automatically
- Adjust settings in the Effect Controls panel:
- Smoothness: Higher = smoother (default 50%)
- Method: Subspace Warp (default, best quality), Position/Scale/Rotation, or Position only
- Framing: Stabilize, Crop, Stabilize + Crop + Auto Scale
- Borders: Feather and synthesis options for edge handling
Common Warp Stabilizer Issues
- "Warp Stabilizer requires clip dimensions to match sequence": Nest the clip first (right-click > Nest)
- Jello/rolling shutter artifacts: Switch Method from Subspace Warp to Position, Scale, Rotation
- Too much cropping: Reduce Smoothness or increase the Additional Scale setting
Method 4: Mobile Stabilization
For quick social media fixes, mobile apps offer one-tap stabilization:
CapCut (Free)
- Import video
- Tap the clip on the timeline
- Select Stabilize from the bottom menu
- Choose stabilization level
- Export
Google Photos (Built-in)
- Open the video in Google Photos
- Tap Edit
- Tap Stabilize (the camcorder icon)
- Save
Mobile stabilization is convenient but limited — it applies a fixed algorithm without the fine-tuning available in desktop tools. For better results, convert and stabilize on desktop, then transfer to mobile. Use the Video Converter to prepare files for any platform.
Best Practices for Stabilization
Shoot with Stabilization in Mind
Prevention is better than cure. Even basic shooting technique reduces the need for post-stabilization:
- Use two hands on your phone or camera
- Brace your elbows against your body
- Walk heel-to-toe when shooting in motion
- Use a wider lens — wide angles are inherently more stable than telephoto
- Enable in-camera stabilization (OIS/EIS) when available
Resolution Strategy
Always shoot at a higher resolution than your delivery target when you know stabilization will be needed. Stabilization crops the frame, so starting with extra resolution ensures your output maintains the intended resolution:
- Delivering at 1080p? Shoot at 4K (gives ~50% crop margin)
- Delivering at 720p? Shoot at 1080p or higher
For resolution conversion after stabilization, use our resize video guide or the video compressor.
Dealing with Rolling Shutter
Many CMOS sensors (common in phones and consumer cameras) use a rolling shutter, which captures the frame line by line rather than all at once. Fast camera movement combined with rolling shutter produces a "jello" or "wobble" effect that stabilization can worsen.
Solutions:
- Use a Position + Scale + Rotation stabilization method instead of warp-based methods
- In FFmpeg, lower the
shakinessvalue to avoid overcorrection - In Premiere Pro, uncheck Rolling Shutter Repair if it introduces new artifacts
- Shoot at higher frame rates (60 fps reduces rolling shutter artifacts)
For more on frame rate selection, see our frame rate guide.

Batch Stabilizing Multiple Clips
If you have a batch of shaky clips (common after event coverage or travel), automate the process with a bash script:
#!/bin/bash
mkdir -p stabilized
for file in *.mp4; do
[ -f "$file" ] || continue
echo "Stabilizing: $file"
# Pass 1: Detect motion
ffmpeg -i "$file" \
-vf "vidstabdetect=shakiness=7:accuracy=15:result=${file%.mp4}.trf" \
-f null -y - 2>/dev/null
# Pass 2: Apply stabilization
ffmpeg -i "$file" \
-vf "vidstabtransform=input=${file%.mp4}.trf:smoothing=15:zoom=5" \
-c:v libx264 -crf 18 -preset medium \
-c:a copy -movflags +faststart \
"stabilized/${file}" -y 2>/dev/null
# Clean up transform file
rm -f "${file%.mp4}.trf"
echo "Done: $file"
done
For non-command-line batch processing, see our batch processing guide and how to batch convert files.
Stabilization Quality Comparison
To illustrate the practical differences between stabilization methods, here is a rough quality and performance comparison based on typical 1080p/30fps footage:
| Tool | Motion Analysis | Edge Handling | Rolling Shutter Fix | Processing Time (1 min clip) |
|---|---|---|---|---|
| FFmpeg vidstab | 2D affine | Crop or black fill | No | 30-90 seconds |
| Premiere Pro Warp Stabilizer | Subspace warp (3D) | Crop, synthesize, or stabilize only | Yes | 1-3 minutes |
| DaVinci Resolve | Perspective (3D) | Crop with zoom | No (Studio only) | 1-3 minutes |
| CapCut | 2D | Auto-crop | No | 10-30 seconds |
| Gyroflow | Gyroscope (hardware) | Crop with lens correction | Yes | 10-30 seconds |
Advanced: Combining Stabilization with Other Corrections
Stabilization is often just one step in a post-processing pipeline. After stabilizing, you may want to:
- Crop the video to remove residual border artifacts — use the crop video tool or see our guide on how to resize video
- Adjust the speed to create a smooth slow-motion effect from stabilized 60fps footage — use the change video speed tool
- Add a watermark to the stabilized output — use the add watermark to video tool or see our watermark guide
- Compress the final output for sharing — see our compress video without losing quality guide
The key is to stabilize early in the pipeline, before color grading and effects, because stabilization requires re-encoding and you want to minimize the number of encode cycles your footage goes through. For details on encoding and quality preservation, see our lossless vs lossy compression guide.
Frequently Asked Questions
Does stabilization reduce video quality?
Yes, slightly. Stabilization requires re-encoding (which introduces a generation of compression) and cropping (which reduces resolution). Shooting at a higher resolution than your delivery target minimizes the resolution loss.
Can I stabilize 4K video?
Yes, but it requires more processing time and memory. FFmpeg handles 4K stabilization well. Premiere Pro and DaVinci Resolve both support 4K stabilization with GPU acceleration.
Why does my stabilized video have a jello effect?
This is caused by rolling shutter interaction with the stabilization algorithm. Switch to a translation-only or position-scale-rotation stabilization mode, or use Gyroflow if your camera records gyroscope data.
Is hardware stabilization (gimbal/OIS) better than software?
Yes, hardware stabilization captures the full frame without needing to crop, and it prevents motion blur that software cannot fix. However, software stabilization has closed the gap significantly and is perfectly adequate for most content.
Conclusion
Shaky video is fixable. FFmpeg's vidstab library provides free, scriptable stabilization for command-line users. DaVinci Resolve offers professional-grade stabilization in its free version. Premiere Pro's Warp Stabilizer remains the most feature-rich option for paying subscribers.
The key principles are: shoot at a higher resolution than your target, stabilize early in your editing pipeline, and choose the right smoothing level for your content type. For converting and compressing your stabilized output, use the Video Converter or the video compressor.
For related video processing techniques, explore our guides on how to trim and cut video, how to rotate and flip video, and video codecs explained.



