mwydmuch / ZoomVideoComposer

Pyhton script for generating zoom in/out videos from a set of images
MIT License
108 stars 19 forks source link

Jitter (non-smooth) animations. Most noticable at slower speeds. #16

Open sambernaerdt opened 1 year ago

sambernaerdt commented 1 year ago

First of all: Thanks again for putting this together.

I did notice that at slower speeds, the animation is not super smooth. It looks like it gets rounded to some values. As soon as the speed increases, it gets less noticable.

Some examples where it is visible:

mwydmuch commented 1 year ago

Yes, I'm aware of that, it happens because image cropping in both image backends requires rounding to the integer pixel coordinates. Let me think about how to solve it in the best possible way. I guess the one resource-costly solution is to increase the internal resolution of the images, this will give the best result, and smooth animation. The second option is to better control rounding, sacrificing a bit of smoothness (no jitter but possibly visible pixel size shifts).

sambernaerdt commented 1 year ago

IMHO: I wouldn't mind the sacrifice of longer render times if that is a quick fix to increase the smoothness. I have no clue at what magnitudes of render time increase we are looking here, but I guess it could work when it's an argument to opt-in when desired.