MLT gets a video stabilizer, Kdenlive is next

MLT gets a video stabilizer, Kdenlive is next

The quest of telling Kdenlive developers about an existing open source video stabilizer and getting it in Kdenlive is about 1/2 done.

Earlier today Dan Dennedy merged to MLT a new filter that is a port of KLT Video Stabilizer. If you are not much into Kdenlive's architecture, MLT stand for Media Loving' Toolkit, and it's a multimedia framework used by various applications including Kdenlive for IO and processing.

The original KLT Video Stabilizer is a project by Leonardo Masoni, and it uses Kanade-Lucas-Tomasi feature tracker. Most work of porting the application to MLT was done by Marco Gittler. Just like the original algorithm, the filter makes two passes, first to analyze data, then to apply corrections.

Right now if don't mind building MLT from Git (or using a build from PPA on Ubuntu) you can test it using melt. Dan graciously provided example commands.


$ melt -verbose -profile quarter_ntsc_wide capture001.m2t.mpg out=1000 -filter videostab -consumer xml:capture001-vstab.mlt all=1 real_time=-2


$ melt capture001-vstab.mlt


$ melt capture001-vstab.mlt  -verbose -consumer avformat:capture001-vstab.webm properties=webm real_time=-2 threads=3

The two-step nature of the process means that user interface cannot be automagically generated in Kdenlive like it's done for other MLT and frei0r filters, and the filter will probably not be animatable (should it be, anyway?).

Right now Kdenlive team is wrapping up v0.8.2 release and is planning to move source code repository to KDE after that. Then we'll see how much time it will take to finish integration of the video stabilizer into Kdenlive.

Was it useful? There's more:


Leave a comment
  1. Sweet feature!

  2. Jimmy Voltatile 02 November 2011 at 1:53 am

    Very, very nice… cant make it work, though. I’ve built it from source but I’m not able to make the above. Seems like 0.7.6 does not support the same kind of syntax…

    I’m trying this on mp4-mobile files though so that might be what’s wrong…

Tell us what you think

Submit the word you see below: