我想将所有这些 .bmp 文件合并为一个 movie.mp4。我正在使用ffmpeg。
此命令生成仅 0.04 秒的电影:
$ ffmpeg -i f%05d.bmp -c:v libx264 -r 30 -pix_fmt yuv420p movie.mp4
它应该会拾取所有文件,不是吗?我不知道我做错了什么,也找不到解决办法。
我尝试过的这个命令这里说找不到路径为“f%05d.bmp”的文件,尽管上述命令可以?
$ ffmpeg -r 60 -f image2 -s 1920x1080 -start_number 1 -i f%05d.bmp -vframes 1759 -vcodec libx264 -crf 25 -pix_fmt yuv420p test.mp4
答案1
我认为文件应该有连续的编号,否则它们将被单独处理(因此您将获得 0.04 秒的电影 - 只有一帧)。几天前我需要一些类似的东西(虽然不是用于 ffmpeg,而是将文件导入 DaVinci Resolve),我写了一个简单的 python 脚本:
import os
filename="whatever{0:05d}.png"
destno = 1
for i in range(0, 10000):
src = filename.format(i)
if os.path.isfile(src):
dst=filename.format(destno)
destno+=1
os.rename(src, dst)
print "renamed {0:s} to {1:s}".format(src, dst)
糟糕透了,但还是管用。
答案2
也许您可以改变通配符来获取所有 .bmp 文件:
ffmpeg -r 60 -f image2 -s 1920x1080 -start_number 1 -i %*.bmp -vframes 1759 -vcodec libx264 -crf 25 -pix_fmt yuv420p test.mp4