ffmpeg -r 1/5 -start_number 2 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4

这一行工作得很好,但我想从另一个文件夹中的图像创建一个视频文件。 我文件夹中的图像名称是:

img001.jpg
img002.jpg
img003.jpg
...

我如何从不同的文件夹输入图像文件?例如:C: \ mypics

我尝试了这个命令,但ffmpeg只生成了第一个图像(img001.jpg)的视频。

ffmpeg -r 1/5 -start_number 0 -i C:\myimages\img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4

当前回答

文档中的简单版本

作品特别伟大的谷歌地球工作室图像:

ffmpeg -framerate 24 -i Project%03d.png Project.mp4

其他回答

为我创建视频与音频它工作,你需要指定:

正常帧:-framerate 30

audio -i audio/audio.ogg

以及libx264库

   system("ffmpeg -framerate 30 -i #{out_dir}/%03d.png -i audio/audio.ogg 
-c:a copy -shortest -c:v libx264 -pix_fmt yuv420p out/final
/#{out_dir.sub("out/", "")}.mp4")

如果你想创建一个循环,例如3乘以-stream_loop 2,因为0,1,2

    system("ffmpeg -stream_loop 2 -framerate 30 -i 
#{out_dir}/%03d.png -i audio/audio.ogg -c:a copy -shortest -c:v 
libx264 -pix_fmt yuv420p -b:v 50M  out/final/#{out_dir.sub("out/", 
"")}.mp4")

我发现这很有用,并尝试了一下

Ffmpeg -framerate 1 -pattern_type glob -i '*.jpg' -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4

来源:https://shotstack.io/learn/use-ffmpeg-to-convert-images-to-video/

文档中的简单版本

作品特别伟大的谷歌地球工作室图像:

ffmpeg -framerate 24 -i Project%03d.png Project.mp4

从视频中创建帧:

ffmpeg\ffmpeg -i %video% test\thumb%04d.jpg -hide_banner

可选:删除帧你不想在输出视频 (比使用-ss & -t修剪视频更准确)

然后从图像/帧创建视频,例如:

ffmpeg\ffmpeg -framerate 30 -start_number 56 -i test\thumb%04d.jpg -vf format=yuv420p test/output.mp4

由于glob命令在windows上不可用,因为它是POSIX实现,所以解决方法是使用序列作为模式。要做到这一点,人们需要用序列号重命名他们的文件

gym01.jpg
gym02.jpg
...

然后我们可以在Windows上使用下面的命令-注意gym%02d.jpg,其中如果您的序列包含超过2个字符(例如,gym00001.jpg),则相应地更改它(gym%05d.jpg)

ffmpeg -framerate 1 -pattern_type sequence -i gym%02d.jpg -s:v 1920x1080 -c:v libx264 -pix_fmt yuv420p out.mp4