我有一系列png图像,我需要转换为以60帧/秒播放的视频。
ffmpeg -y -i frames/%4d.png -vcodec libx264 -r 60 video.avi
上面的代码导致视频每秒有60帧,但它使用相同的帧两到三次,有效地结束了25-f五次视频的两倍。我做错了什么?
答案 0 :(得分:1)
一些ffmpeg参数是位置依赖。 ffmpeg通过它提供了一些提示:
# ffmpeg -h
...
Global options (affect whole program instead of just one file:
-loglevel loglevel set logging level
...
Per-file main options:
-f fmt force format
...
#
-r
是这些参数的开头,这些参数是按文件指定的。
为了使参数适应输入文件,您必须在相应的-r
参数之前编写-i
参数。
所以下面应该适合你(使用mpeg4编码器为我工作):
ffmpeg -y -r 60 -i frames/%4d.png -vcodec libx264 video.avi
您也可以尝试,因为libx264编码器可能无法调整帧速率:
ffmpeg -y -r 60 -i frames/%4d.png -vcodec libx264 -r 60 video.avi