17

Is there any way, either through a graphical program or a command line utility to "stabilise" video in Ubuntu?

By stabilise I am referring mainly to a feature of iMovie where shaky video is analysed, and then frame by frame altered to make it look smoother. This method looses video quality through zooming and rotating to produce the effect. Look at this video for an example of what I mean.

  • I don't know much about video, but the shakiness in your example doesn't look like the kind of shakiness those apps are designed to eliminate. Perhaps try mounting it on the frame, rather than your helmet? – Stefano Palazzo Feb 28 '11 at 17:43
  • couldn't you do it in ubuntu? – Lincity Mar 1 '11 at 15:18
13

The transcode package bundles an image stabiliser plugin vid.stab. Their video demo certainly looks convincing (if a little vomit inducing).

  • It is now available as a filter in ffmpeg 2.0, though ffmpeg itself is not available for Ubuntu :( – FairMiles Oct 19 '13 at 20:17
  • @FairMiles ffmpeg is available in the Ubuntu repositories, but not vidstab apparently. – Flimm Nov 17 '17 at 20:13
8

You can try Cinelerra,

Installing cinelerra

  • Add the following PPA ppa:cinelerra-ppa/ppa (How to add a PPA) then install cinelerra from the software center.

Tutorials

  • Have a look at this.
  • Looking at that tutorial is quite disappointing - compared to what I'm used to in iMovie then the process is lengthy, and the result does not seem as good either. – 8128 Dec 28 '10 at 17:08
5

FFmpeg deshake filter.

ffmpeg -i "$INPUT" -vf deshake=rx=64:ry=64:blocksize=32 -strict -2 "$NEW_NAME"  ## :opencl=1

The higher the video resolution is, the more you need in rx, ry and blocksize. Check the link for documentation.

Here's a little script I use:

INPUT=$1
BASE_NAME=`basename "$INPUT"`
BASE_NAME="${BASE_NAME%.*}"
SUFFIX=${INPUT##*.}
NEW_NAME="$BASE_NAME"-deshake.$SUFFIX

set -x
ffmpeg -i "$INPUT" -vf deshake=rx=64:ry=64:blocksize=32 -strict -2 "$NEW_NAME"  ## :opencl=1
set +x
##  Copy the modification date too.
touch "$NEW_NAME" -r "$INPUT"

Although, I have to add, the results are not too good. I'd say it's better to upload to Youtube, let it deshake and download the result.

2

You can try Shotcut (http://shotcut.org/). It's a NLE (Non linear editor) that comes with a lot of filters, including video stabilizing. check out this tutorial: https://www.youtube.com/watch?v=C3v-jYJJfuM

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.