首页 > 解决方案 > 如何使用 ffmpeg 指定输出图像帧的确切数量?

问题描述

我有N个输入动画帧作为文件夹中的图像,我想在帧之间创建插值以创建长度为N * M的更平滑的动画,即对于每个输入帧我想创建M个输出帧,逐渐变形到下一帧,例如使用minterpolate过滤器。

换句话说,我想将 FPS 提高M倍,但我没有使用时间,因为我没有使用任何视频格式,输入和输出都是存储为图像文件的图像序列。

我试图结合-rFPS选项,但没有成功,因为我不知道它们如何协同工作。例如:

是否有我应该使用-r的特定组合?FPS还是有另一种方法可以实现我所需要的?

谢谢!

标签: animationffmpeg

解决方案


FFmpeg 将 25 的帧率分配给没有固有帧率的格式,例如图像序列。

图像序列解复用器具有设置帧速率的选项。并且 mininterpolate 过滤器具有目标 fps 的选项。

ffmpeg -framerate 12 -i frames/f%04d.png -vf "minterpolate=fps=120" interpolated_frames/f%04d.png

推荐阅读