Image animation. Zoom

Today we will check zoom in and out effects:

  • zoom in
    ffmpeg -y \
    -loop 1 -i bgimage.png -ss 0 -t 5 \
    -r 1 -loop 1 -i front.png -ss 0 -t 5 \
    -filter_complex " [1:v] scale=w=1920:h=1080 [fg];  \
    scale=w=-2:h=3*1080 , crop=w=3*1920:h=3*1080,  \
    zoompan=z=min(max(zoom\,pzoom)+0.0008\,1.1):d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':s=1920x1080,  \
    setsar=1 [bg];  \
    [bg][fg]overlay=shortest=1[v] " \
    -map "[v]" -c:v h264 -crf 18 -preset veryfast zoom_in.mp4
    

  • zoom out
    ffmpeg -y -loop 1 \
    -i bgimage.png -ss 0 -t 5 \
    -r 1 -loop 1 -i front.png -ss 0 -t 5 \
    -filter_complex " [1:v] scale=w=1920:h=1080 [fg];  \
    [0:v] scale=w=-2:h=3*1080 , crop=w=3*1920:h=3*1080,  \
    zoompan=z=if(lte(zoom\,1.0)\,1/0.9\,max(1.0\,zoom+-0.0008)):d=25*5:x='iw/2-(iw/zoom/2)':\
    y='ih/2-(ih/zoom/2)':s=1920x1080,  setsar=1 [bg] ; \
    [bg][fg]overlay=shortest=1[v] " \
    -map "[v]" -c:v h264 -crf 18 -preset veryfast zoom_out.mp4
    

All sources in php available on my github

Leave a Reply

Your email address will not be published. Required fields are marked *