4

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

我使用了命令:

ffmpeg -i Video.MP4 Pictures%d.bmp

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

4

2 回答 2

14

文件大小取决于您的视频分辨率和您选择的输出格式。例如:

width x height x 3 bytes ( RGB24)

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

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

    'ffmpeg -pix_fmts

BMP 格式应该可以处理(生成 8bpp 图像),但要确认文件大小是 3 倍!

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

    ffmpeg -i Video.MP4 -s 192x168 Pictures%d.bmp
    

    或使用以下-vf选项:

    ffmpeg -I Video.MP4 -vf scale=192:168 Pictures%d.bmp
    
于 2013-07-15T16:42:00.297 回答
1

还有一个选项可以减少输出图片的文件大小:使用另一种图片格式,如 *.jpg。

ffmpeg -i input.flv -ss 00:00:14.435 -f image2 -vframes 1 out.jpg

(来源:http ://trac.ffmpeg.org/wiki/Create%20a%20thumbnail%20image%20every%20X%20seconds%20of%20the%20video )

祝你今天过得愉快 ;)

于 2013-07-16T01:45:15.313 回答