我在一个文件夹中有 N 个输入动画帧作为图像,我想在帧之间创建插值以创建长度为 N * M 的更平滑的动画,即对于每个输入帧我想创建 M 个输出帧,逐渐变形到下一帧,例如与 minterpolate
筛选。
换句话说,我想将 FPS 提高 M 倍,但我不使用时间,因为我是 不是 使用任何视频格式,输入和输出都是存储为图像文件的图像序列。
我试图结合 -r
和 FPS
选项,但没有成功,因为我不知道它们如何协同工作。例如:
minterpolate
过滤器达到120帧。 ffmpeg -i frames/f%04d.png -vf "fps=10, minterpolate" -r 100 interpolated_frames/f%04d.png
有没有
-r
的具体组合和 FPS
我应该用吗?还是有另一种方法可以实现我所需要的?谢谢!
最佳答案
FFmpeg 将 25 的帧率分配给没有固有帧率的格式,例如图像序列。
图像序列解复用器具有设置帧速率的选项。并且 mininterpolate 过滤器具有目标 fps 的选项。
ffmpeg -framerate 12 -i frames/f%04d.png -vf "minterpolate=fps=120" interpolated_frames/f%04d.png
关于animation - 如何使用 ffmpeg 指定输出图像帧的确切数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64833848/