[FFmpeg-devel] [PATCH / RFC] Deshake / stabilize filter

Daniel G. Taylor dan
Mon Apr 12 21:23:25 CEST 2010

On 04/12/2010 01:30 PM, Alexander Strange wrote:
> [ ... ]
>> 1. Ask for comments, suggestions, etc to make it better 2. Get it
>> into FFmpeg trunk
> libavcodec already includes motion estimation code which should be
> useful here, so you don't have to reimplement it using only fullpel
> exhaustive search. Unfortunately it's not exposed on its own, so the
> mplayer filters that use it (like vf_mcdeint) encode to Snow and then
> read the motion back out of that, which seems wrong. And some of the
> me methods are actually controlled by dia_size instead of me_method
> for some reason.
> It would be nice if those were fixed so filters could share
> algorithms properly.

Yeah, I was hoping to avoid the encoding-and-stealing-mv hackery. See 
reply to Michael about my thoughts on this.

>> I also found this while searching and realized it uses a very
>> similar algorithm but does a full matrix transform and detects
>> rotation which seems works really well but is significantly slower
>> and GPL:
>> http://public.hronopik.de/vid.stab/features.php?lang=en
> Where possible I'd like to see Avisynth filters ported rather than
> transcode, since I have a feeling that they work better due to more
> people testing them: http://avisynth.org.ru/mvtools/mvtools2.html
> http://avisynth.org.ru/depan/depan.html
> I haven't used either of those, but the manuals might be
> interesting.

I agree on porting avisynth filters, however in the case of the two 
linked above:

   1. The actual depanstabilize plugin is not open source
   2. The open source parts are GPL

Also this isn't a port - I came up with this code on my own; I was just 
noticing how the transcode filter linked above uses a similar (but more 
thorough) approach. I've contacted the original author and am going to 
see if we can maybe work together and/or borrow code from each other, 
and I may take a look and see how the avisynth motion search plugins work.

Take care,
Daniel G. Taylor

More information about the ffmpeg-devel mailing list