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
See Also
Kdenlive
Lightworks
Blender