2012-07-22 63 views
2

我正尝试在顶部和底部使用填充来创建视频的缩略图图像。它工作得很好,如果我想创建一个JPEG图像,但在巴布亚新几内亚的情况下,它转储错误味精“error padding picture使用ffmpeg创建png缩略图会给出错误消息“错误填充图片”

我使用的命令是:

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

我没有看到任何明显的错误。听起来像一个错误。您是否尝试过使用更新版本的FFmpeg,可能使用[视频滤镜填充](http://ffmpeg.org/ffmpeg.html#Video-Options)而不是单个填充标记? – blahdiblah 2012-07-23 19:56:01

回答

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 

垫的oh/2-ih/2图像到128x84,将所述输入图像在Y坐标(其中oh是84的输出高度,并且ih是输入图像的高度),使得它在输出中心。

请注意,如果您的视频比它们宽(因此需要横向填充而不是垂直),则此滤镜字符串将不起作用。解决方案,我留给读者。

+0

我目前使用的是0.6.2版本。由于其他原因,我不确定是否可以立即升级到新版本。视频过滤器(-vf)在0.6.2中不受支持。有没有其他解决方法? – 2012-07-24 05:18:18

+0

我强烈建议升级。整个0.6分支是几岁;即使是该分支的最新版本(0.6.6)也没有得到保留。 ffmpeg的更新版本将为您提供更快,更好的多种格式的编码和解码,以及过滤器(各种有用的)。 – duskwuff 2012-07-24 06:30:54