如何使用FFmpeg从图像创建视频? [英] How to create a video from images with FFmpeg?
问题描述
ffmpeg -r 1/5 -start_number 2 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4
此行工作正常但我想从另一个文件夹中的图像创建视频文件。
我文件夹中的图像名称是:
This line worked fine but I want to create a video file from images in another folder. Image names in my folder are:
img001.jpg
img002.jpg
img003.jpg
...
我如何从不同的文件夹输入图像文件?示例: C:\ mypics
How could I input images files from a different folder? Example: C:\mypics
我尝试了此命令,但 ffmpeg
仅生成第一张图片(img001.jpg)的视频。
I tried this command but ffmpeg
generated a video with the first image (img001.jpg) only.
ffmpeg -r 1/5 -start_number 0 -i C:\myimages\img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4
推荐答案
如果您的视频未显示框架正确如果您遇到问题,例如第一张图片被跳过或仅显示一帧,请使用 fps视频过滤器代替 -r 输出帧速率
If your video does not show the frames correctly If you encounter problems, such as the first image is skipped or only shows for one frame, then use the fps video filter instead of -r for the output framerate
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。这种方法的优点是你可以控制哪个过滤器先行
Alternatively the format video filter can be added to the filterchain to replace -pix_fmt yuv420p like "fps=25,format=yuv420p". The advantage to this method is that you can control which filter goes first
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 ,如下所示。
First add image paths to imagepaths.txt like below.
# 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从图像创建视频?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!