ffmpeg 错误:无法找到“scale=1500:1000”的合适输出格式

Tom*_*ica 3 ffmpeg

我正在尝试将一堆图像转换为视频。原始图像分辨率是 6000x4000,但是如果我使用 ffmpeg 创建具有该分辨率的视频,则没有播放器可以播放它,因为它太大了。

我尝试这样设置输出分辨率,将输入分辨率除以 4:

ffmpeg -r 60 -s 1500x1000 -start_number 3790 -i DSC_%04d.jpg -vcodec libx264 -crf 25  -pix_fmt yuv420p ../video_lowres.mp4
Run Code Online (Sandbox Code Playgroud)

这没有效果,但仍然生成 6000x4000 的视频。因此,我尝试了这个参数:scale=1500:1000我运行的完整命令:

ffmpeg -r 60 scale=1500:1000 -start_number 3790 -i DSC_%04d.jpg -vcodec libx264 -crf 25  -pix_fmt yuv420p ../video_lowres.mp4
Run Code Online (Sandbox Code Playgroud)

但我收到了这个错误:

[NULL @ 000002ad897bd9c0] Unable to find a suitable output format for 'scale=1500:1000'
scale=1500:1000: Invalid argument
Run Code Online (Sandbox Code Playgroud)

如何使用 ffmpeg 从照片创建缩小视频?

小智 6

您需要输入-vfbeforescale告诉 FFmpeg 您要使用视频过滤器。另外,它应该在图像的文件名之后指定,因为它是输出选项,而不是输入选项。您可以将其放在输出名称之前:

ffmpeg -r 60 -start_number 3790 -i DSC_%04d.jpg -vcodec libx264 -crf 25 -pix_fmt yuv420p -vf scale=1500:1000 ../video_lowres.mp4