当前位置: 首页 > 知识库问答 >
问题:

如何用FFMPEG从图像创建视频?

岑畅
2023-03-14
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

共有1个答案

钮边浩
2023-03-14

请参阅“从图像创建视频幻灯片”-FFmpeg

如果您的视频没有正确显示帧(如果遇到问题,例如第一个图像被跳过或只显示一帧),则使用fps视频过滤器,而不是-R作为输出帧率

ffmpeg -r 1/5 -i img%03d.png -c:v libx264 -vf fps=25 -pix_fmt yuv420p out.mp4

或者,格式视频滤波器可以添加到滤波器链中,以替换-PIX_FMT yuv420p,如“fps=25,format=yuv420p”。这种方法优点是您可以控制哪个筛选器先进入

ffmpeg -r 1/5 -i img%03d.png -c:v libx264 -vf "fps=25,format=yuv420p" out.mp4

我测试了以下参数,它对我有效

"e:\ffmpeg\ffmpeg.exe" -r 1/5 -start_number 0 -i "E:\images\01\padlock%3d.png" -c:v libx264 -vf "fps=25,format=yuv420p" e:\out.mp4

下面的参数也起作用,但它总是跳过第一个图像

"e:\ffmpeg\ffmpeg.exe" -r 1/5 -start_number 0 -i "E:\images\01\padlock%3d.png" -c:v libx264 -r 30 -pix_fmt yuv420p e:\out.mp4

从放置在不同文件夹中的图像制作视频

首先,向ImagePaths.txt添加图像路径,如下所示。

# this is a comment details https://trac.ffmpeg.org/wiki/Concatenate

file 'E:\images\png\images__%3d.jpg'
file 'E:\images\jpg\images__%3d.jpg'

示例用法如下;

"h:\ffmpeg\ffmpeg.exe" -y -r 1/5 -f concat -safe 0 -i "E:\images\imagepaths.txt" -c:v libx264 -vf "fps=25,format=yuv420p" "e:\out.mp4"

-SAFE 0参数防止不安全的文件名错误

相关链接

FFmpeg从放置在不同文件夹中的图像制作视频

中间指南/图像序列

级联-FFmpeg

 类似资料:
  • 问题内容: 我现在可以编译ffmpeg并将其添加到项目创建的Android.mk文件的jni文件夹中,我想使用ffmpeg从存储在静态arraylist中的图像创建视频文件 我已经搜索了很多,但找不到任何教程,对此表示感谢。 问题答案: 我也有类似的需求,并且达到了相同的目的。您可以通过两种方式执行此操作。我想先分享一个简单的例子。 在Android内部创建一个临时文件夹。 将图像复制到新文件夹中

  • 因此,我尝试提取视频的每一帧,然后使用ffprobe查看视频中何时播放每一帧,然后使用这些提取的图像和ffprobe输出将视频缝合在一起。 现在,我有一个批处理文件: 首先,为图像创建一个目录。然后ffmpeg将视频的所有帧提取到单独的PNG文件中,这些文件被适当地编号。最后,ffprobe会看到视频中第一次显示每一帧的时间(即:第1帧以0秒的速度显示,但以60fps的速度显示,然后第2帧以0.0

  • 我试图创建一个视频从jpeg图像使用ffmpeg。生成的视频应为x264或x265格式。 我有一个36张图片的目录。每个图像大小约为60像素。它们的名称如下: 第00000帧。jpg 框架00001。jps 框架00002。jpg 框架00035。jpg 我阅读了SO中的文档和几篇文章,并编写了一个批处理文件来调用ffmpeg,如下所示: 当我运行这个命令时,我从ffmpeg得到了这个输出,这很奇

  • 我正在创建一个短视频从序列的100个图像使用FFMPEG。有几篇文章帮助我编写了一个命令,但我使用的这个命令是直接从ffmpeg图像到视频脚本中提取的,有人吗?。 下面的命令生成一个在我所有的视频播放器(OS X)中播放良好的视频文件。 但如果我把它改成, 除了VLC媒体播放器外,它在所有媒体播放器中都发挥得很好。VLC显示最初的1到3个图像,然后只是冻结在帧上。我测试了几种不同的帧率,似乎中断V

  • 我试图创建缩略图图像上传视频与FFMPEG在ASP. NET核心如下: 它没有显示任何错误,但也没有生成缩略图。请问我遗漏了什么吗? 注意:如果我从命令行执行上面的配置,它就会工作!