如何在ffmpeg命令中指定输出图像的大小?

sal*_*guy 3 ffmpeg bmp

我正在使用ffmpeg终端从MP4视频中提取帧图像.

我使用了命令:

ffmpeg -i Video.MP4 Pictures%d.bmp
Run Code Online (Sandbox Code Playgroud)

问题是提取的图像大小为4.5-5MB!我想要更小的图像,比如大约1-2 MB.如何限制输出图像的大小?

ale*_*son 9

文件大小是视频分辨率和所选输出格式的函数.例如:

width x height x 3 bytes ( RGB24)
Run Code Online (Sandbox Code Playgroud)

您有不同的方法来减少输出文件的大小.

  1. 更改格式,例如YUV 4:2:0,-pix_fmt yuv420我认为您可以选择的较小格式是灰色或yuv400,但请查看以下显示ffmpeg支持的像素格式的命令

    'ffmpeg -pix_fmts

BMP格式应该处理(生成8bpp图像)但确认文件大小得到因子3!

  1. 使用-s <Width>x<Height>例如:更改输出分辨率(HD到SD或CIF):

    ffmpeg -i Video.MP4 -s 192x168 Pictures%d.bmp
    
    Run Code Online (Sandbox Code Playgroud)

    或者-vf选项:

    ffmpeg -I Video.MP4 -vf scale=192:168 Pictures%d.bmp
    
    Run Code Online (Sandbox Code Playgroud)

  • 是的,有,我编辑了我的答案,看看第 1 节。 (2认同)