ffmpeg-zoompan

zoompan滤镜

放大和摇镜头,此滤镜在zoom的时候会有抖动的瑕疵,有一个土方法是先放大几倍,然后再在zoompan的s参数生成想要的分辨率

接受以下几个常用参数:

  • zoom,z 放大系数表达式

  • x,y 表达式,默认为0,结合s参数使用来获取想要的放大后的部分

  • s 输出图像尺寸

  • d 持续帧数

    每个表达式都可以接受以下参数

    1. iw,ih 输入的宽高
    2. ow,oh 输出的宽高
    3. in,on 输入输出帧计数
    4. x,y 最后计算的x和y对于当前输入帧的x和y表达式。
    5. zoom 当前输入帧对应的最后z表达式计算得出的放大系数

demos

  1. 放大到1.5,屏幕中心不变,持续50帧

    1
    zoompan=zoom+0.01:x=(iw-iw/zoom)/2:y=(ih-ih/zoom)/2:s=1280x720:d=50
  2. 放大到1.5,持续50帧,然后向右平移

    1
    zoompan='min(zoom+0.01,1.5)':x='if(lte(on,50),(iw-iw/zoom)/2,x+10)':y='if(lte(on,50),(ih-ih/zoom)/2,y)':s=1280x720:d=250
  3. 先放大到1.5,然后慢慢缩小

    1
    zoompan='if(eq(on,1),1.5,zoom-0.002)':x='(iw-iw/zoom)/2':y='(ih-ih/zoom)/2':s=1280x720:d=250