用叠加和缩放创建海报

时间:2017-07-16 16:05:14

标签: ffmpeg

我正在努力从视频创建缩略图并添加叠加层。以下工作很好;它输出一个带有PNG叠加层的JPG。

ffmpeg -ss 15 -i input.mp4 -i play-button.png \
-filter_complex overlay='(main_w-overlay_w)/2:(main_h-overlay_h)/2' \
-vframes 1 poster.jpg

但是,我想缩小缩略图,所以我尝试添加scale='min(640\, iw):-1'

ffmpeg -ss 15 -i input.mp4 -i play-button.png \ 
-filter_complex overlay='(main_w-overlay_w)/2:(main_h-overlay_h)/2' \
-vframes 1 scale='min(640\, iw):-1' poster.jpg

但是这样做的时候我收到了错误

Unable to find a suitable output format for 
'scale=min(640\, iw):-1' scale=min(640\, iw):-1: Invalid argument

我已经尝试了qscale并添加了image2,并且玩了很多不同的选项,但却找不到有效的选项。

修改

这是我之前用来制作海报图片的内容,我只需要添加叠加层。但是当试图将两者结合起来时,一切都崩溃了。

ffmpeg -ss 15 -i input.mp4 -f image2 -vf scale='min(640\, iw):-1' \
vframes 1 poster.jpg

1 个答案:

答案 0 :(得分:0)

您必须在单个图表中制定所有过滤器,所以

ffmpeg -ss 15 -i input.mp4 -i play-button.png \
  -filter_complex overlay='(main_w-overlay_w)/2:(main_h-overlay_h)/2',scale='min(640\, iw):-1 \
  -vframes 1 poster.jpg