[Cin] Issues related to Motion Plugin

Georgy Salnikov sge at nmr.nioch.nsc.ru
Sun Sep 25 12:39:24 CEST 2022

On Sun, 25 Sep 2022, Miroslav Rovis via Cin wrote:

> But I plan to make it both a demonstration of this capability
> and a tutorial so other users can benefit from it, on the one
> hand.

Motion plugin algorithm in cingg is rather difficult to understand (the most
efficient way to understand it is to look inside its C++ code:)

Moreover, it has some tricks that, although can be derived knowing the
details of the algorithm, are absolutely non-intuitive by themselves.

Moreover, it is rather slow, and the results cannot be visible immediately
while altering the settings.

If the user needs only a smoothed video, perhaps he should not do it with
the Motion plugin. The ffmpeg's vid.stab plugin is much easier to use, it is
faster, and gives very good results.

CinGG's Motion can be powerful, if you need either to freeze motion
completely, or you need motion tracking instead of motion stabilization.

> The fist issue:
> When using Motion Plugin, a last-used setting (previusly used,
> even in a different video) is written in the new XML along with
> the newly setup numbers for a particular part of a video to
> which Motion Plugin Effect is attached. And it sometimes messes
> up the XML, and rendering does not get what the user put in.

Yes, it is the intentional behavior. Not only Motion, but all the cingg
plugins save their settings in their defaults, and reuse them in new XML
projects. Usually this behavior is convenient. In any way, the user has to
reinspect the settings of the used plugins to make sure they are set as

> The second issue:
> And, sometimes, there appear to be problems with some Cinelerra
> cache somewhere so bad that tweaking the Motion Plugin settings,
> while written correctly in the new XML, do not actually apply.
> The rendering gets the user the earlier tweaked result no matter
> the new editing.

The Motion plugin cache is an ingenious thing, and sometimes allows to play
with very sophisticated techniques. For example, by editing the cache (it is
a simple text file), perhaps with some custom script, you can induce some
kind of motion which would be difficult to make in other way. But in the
same time the existence of the cache file can trigger user's mistakes. So
you must always pay attention, which cache file may be used in the moment.

Motion's cache data are absolute-frame-number based. If you insert some
small piece of video before that where the plugin was attached, the frame
numbers get displaced relative to the cached numbers, and the result may
become incorrectly stabilized.

It is not possible to switch Motion cache off. While working, Motion always
looks in its cache. If it contains some data assigned to the current frame
numbers, that cached data will be used unconditionally. If not, that data
will be calculated, stored in the cache, and later reused, also

In the Motion plugin dialog there is a button 'Clear cache contents' (or
something like this). When in doubt, you can press this button, the cached
data will be erased and fresh recalculated on the next pass.

It is quite usual to wish independent caches for different parts of video.
It is possible to set such distinct cache file names (either manually, or
let software generate them). When you generate new names, the plugin
automatically switches Calculation off, just for security. You switch it on
again when needed.

If 'play track' is switched off for the track where the Motion plugin was
attached, the plugin will calculate nothing. Also, if 'Play every frame' was
not active in Preferences, some video frames can get skipped from

> I want to do it along with demonstrating a very good motion
> stabilization on not-too difficult parts of a 1m 30s video that
> otherwise would be almost bad for viewing.

Phyllis has such a very shaky example. May be, I have yet a cingg project to
stabilize it using Motion plugin keyframes. Should I search for it?


Georgy Salnikov
NMR Group
Novosibirsk Institute of Organic Chemistry
Lavrentjeva, 9, 630090 Novosibirsk, Russia
Phone   +7-383-3307864
Email   sge at nmr.nioch.nsc.ru

More information about the Cin mailing list