在学习 FFmpeg 特效的过程中,突发灵感,想实现一下静态图片的拉近拉远效果。查询 FFmpeg 文档,找到 zoompan 可以实现。于是乎,就各种尝试,最后,终于搞定,现记录如下:
【命令】
[C] 纯文本查看 复制代码 ffmpeg -loop 1 -i background.jpg -vf "zoompan=z='if(lte(on,300),zoom+0.0015, zoom-0.0015)':d=600:fps=30" -t 20 output.mp4
【选项说明】
- z : 设置放大系数
- d : 设置多少帧受影响
- fps : 设置输出帧率
上面完美解决了这个问题。但还有一个疑惑始终没有解决,期待大神的解答。
图片放大后再缩小,当放大系数小于 1 时,图片就不会发生变化。(也就是 zoompan 不能缩小原图)
为什么是这样的呢?
【现象复现命令】
[C] 纯文本查看 复制代码 ffmpeg -loop 1 -i background.jpg -vf "zoompan=z='if([color=#ff0000]lte(on,30)[/color],zoom+0.0015, zoom-0.0015)':d=600:fps=30" -t 20 output.mp4
|