我正在尝试使用顶部和底部的填充创建视频的缩略图。如果我想创建一个jpeg图像,它会很好用,但是在png的情况下,它会转储错误消息“error padding picture
”
我使用的命令是:
ffmpeg -ss 0 -vframes 1 -i video.avi -padleft 0 -padright 0 -padtop 22 \
-padbottom 22 -s 128x84 quik.png
如果我只是将输出文件更改为“quik.jpeg
”,则可以正常工作。有没有办法通过ffmpeg创建填充的png图像?我在这里做了一些明显不对的事吗?
答案 0 :(得分:0)
是的 - 您正在使用-pad
选项。它们甚至不再适用于较新版本的ffmpeg;您应该使用pad
过滤器:
ffmpeg -ss 0 -vframes 1 -i video.avi \
-vf scale=128:-1,pad=128:128:0:oh/2-ih/2 \
quik.png
要细分-vf
:
scale=128:-1
使用适合宽高比的任何高度将图像缩放到128宽。
pad=128:84:0:oh/2-ih/2
将图像打印到128x84,将输入图像放在oh/2-ih/2
的Y坐标处(其中oh
是输出高度84,ih
是输入图像的高度这使得它以输出为中心。
请注意,如果视频的宽度高于宽度(因此需要水平填充而不是垂直填充),则此滤镜字符串将不起作用。解决方案,我留给读者。