我正在使用ffmpeg
终端从 MP4 视频中提取帧图像。
我使用了命令:
ffmpeg -i Video.MP4 Pictures%d.bmp
问题是提取的图像大小为 4.5-5MB!我想要更小的图像,比如 1-2 MB 左右。如何限制输出图像的大小?
文件大小取决于您的视频分辨率和您选择的输出格式。例如:
width x height x 3 bytes ( RGB24)
您有不同的方法来减小输出文件的大小。
更改格式,例如 YUV 4:2:0,-pix_fmt yuv420
我认为您可以选择的较小格式是灰色或 yuv400,但请检查以下显示 ffmpeg 支持的像素格式的命令
'ffmpeg -pix_fmts
BMP 格式应该可以处理(生成 8bpp 图像),但要确认文件大小是 3 倍!
使用 更改输出分辨率(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
还有一个选项可以减少输出图片的文件大小:使用另一种图片格式,如 *.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 )
祝你今天过得愉快 ;)