vid.stab

vid.stab is a video stabliser for transcode and ffmpeg.

Strengths [Weaknesses]

Simple

Run a simple command in a shell, end up with stabilised video.

Scriptable

Commands are easily scripted; run batches overnight when nothing else is happening, or when you go to work. Run it on a server. Run it on a cluster.

Weaknesses [Strengths]

Non-Interactive

This is a fully automated stabilisation process. You don't get to open a window and see how the stabilisation will affect the video, or do manual overrides in the middle of a clip.

Install

Install vid.stab from http://slackbuilds.org.

The Slackermedia build of ffmpeg has vidstab enabled. Other builds of ffmpeg may not have this feature enabled, so if you used another ffmpeg build or built it yourself, you should double-check that it is active:

$ ffmpeg --version

Look in the output for the –enable-libvidstab flag. If it is set, then your installed version of ffmpeg can use vid.stab.

Usage

Vid.stab is a two-step process; first video must be analysed, and then it can be stabilised.

Fine adjustments probably need to be made depending on the severity of the shaking in the video. Read more about the different options on https://github.com/georgmartius/vid.stab, and as always, practise makes perfect. Learn to identify the different “kinds” of shakes by stabilising as many clips as you can; take notes on the results, and try different techniques.

First, analyse a video file, using the filter vidstabdetect:

$ ffmpeg -i foo.mp4 -vf vidstabdetect=shakiness=10:accuracy=15:result="transforms.trf"

There is no video output from this command, but data about the video is written to the file transforms.trf.

Use this data to stabilise the video, applying a slight zoom so that the transforms around the edges of the screen are not visible:

$ ffmpeg -i foo.mp4 -vf vidstabtransform=zoom=5:input="mytransforms.trf" fooStabilized.mp4

R S Q