leowenyang 发表于 2017-3-2 10:36:36

实现静态图片“拉近拉远”的特效的疑惑?

在学习 FFmpeg 特效的过程中,突发灵感,想实现一下静态图片的拉近拉远效果。查询 FFmpeg 文档,找到 zoompan 可以实现。于是乎,就各种尝试,最后,终于搞定,现记录如下:

【命令】

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 不能缩小原图)

为什么是这样的呢?
【现象复现命令】
ffmpeg -loop 1 -i background.jpg -vf "zoompan=z='if(lte(on,30),zoom+0.0015, zoom-0.0015)':d=600:fps=30" -t 20 output.mp4

T-Bagwell 发表于 2018-4-25 18:12:15

不能缩小比例小于1,这个是ffmpeg本身现有的不支持的,需要自己定制开发一下

沉淀伏机 发表于 2018-9-25 17:44:02

能不能去掉zoompan的抖动效果?

孙悟空 发表于 2018-9-25 23:24:35

沉淀伏机 发表于 2018-9-25 17:44
能不能去掉zoompan的抖动效果?

取决于你自己的算法了,坐标和宽高的调整部分需要有技巧,要不肯定是抖动,比如2,4,6,8 是可以被2整除, 1,3,5,7是不能被2整除,类似这样的技巧

沉淀伏机 发表于 2018-9-26 17:00:59

孙悟空 发表于 2018-9-25 23:24
取决于你自己的算法了,坐标和宽高的调整部分需要有技巧,要不肯定是抖动,比如2,4,6,8 是可以被2整除,...

把zoom设置为2的倍数,或者把x和y参数的值设置为固定的,也是会抖动啊。为什么呢?

孙悟空 发表于 2018-9-26 23:47:26

沉淀伏机 发表于 2018-9-26 17:00
把zoom设置为2的倍数,或者把x和y参数的值设置为固定的,也是会抖动啊。为什么呢? ...

估计设置的不对,命令行发出来看看
页: [1]
查看完整版本: 实现静态图片“拉近拉远”的特效的疑惑?