You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg zoompan滤镜定点缩放动画出现Zig-zag轨迹问题求助

FFmpeg zoompan滤镜定点缩放动画出现Zig-zag轨迹问题求助

大家好,我最近在做一个FFmpeg的视频缩放动画功能,需求是让用户指定视频中的一个定点(zoomPoint),然后实现先放大到该点、保持一段时间后再缩小的动画效果。

先给大家看看我用到的参数示例:

  • "scale":4:缩放倍数,这里是4倍
  • "offset":0:0毫秒后开始放大
  • "duration":5000:保持放大状态5000毫秒
  • "marginX":80:缩放的X点对应视频宽度的80%位置
  • "marginY":10:缩放的Y点对应视频高度的10%位置

基于这些参数,我运行了如下简化的FFmpeg命令:

ffmpeg -i "/tmp/input.mp4" -c:v libx264 -r 30 -vf "scale=iw*2:ih*2,zoompan=fps=30:z='if(gte(it,0.0)*lt(it,5.0), min(pzoom+0.2, 4),if(gte(it,5.0)*lt(it,5.5), max(pzoom-0.2, 1), 1))':d=1:s=1512x982:x='(iw - iw/4)*(80/100)':y='(ih - ih/4)*(10/100)'" /tmp/output.mp4

关于动画的计算逻辑我也理了一下:

  • 动画时长是0.5秒,视频帧率30fps,所以动画帧数量是 0.5 / (1/30) = 15 帧
  • 缩放的总幅度是 scale - 1 = 3,所以每帧的缩放增量是 3 / 15 = 0.2

现在的问题是:动画虽然最终能到达指定的x/y位置,但过程中会出现锯齿状(Zig-zag)的轨迹——先是缩放到右上角,之后才转向正确的目标位置。我试了好几种方式都没搞定,不知道怎么让缩放动画沿着直线平滑地到达指定的定点。

有没有大佬能给点建议?万分感谢!

备注:内容来源于stack exchange,提问作者kregus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 06:24:51