FFMPEG:无法正确设置框架/边框

FFMPEG:无法正确设置框架/边框

源框架: 在此处输入图片描述

ffmpeg -i /www/1.jpg -vframes 1 -lavfi '[0:v]scale=ih*16/9:594,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=1056:594' -vsync vfr /www/output.jpg

在输出中我得到: 在此处输入图片描述

任务。

  • 需要将原来的框架高度改为594,宽度按比例改变。
  • 原始框架的尺寸准备好后。您需要一块画布,高度为 594,宽度为 1056。在画布上,您需要将原始框架放在中心,并在侧面应用模糊图像。

因为不去尝试,所以一切都是歪的。这么长时间过去了,却没有任何结果。

该怎么办。原始框架可能更窄更高,或者您可能根本不需要添加画布。如何设置,以便没有任何东西被切割,没有太多拉伸,它很漂亮?求助...

如果指定了 setvar 参数,则宽度会在框架的中心发生变化。但中心图像的高度仍然被裁剪,即它不适应 594px

 -s 1056x594 -lavfi 'scale=ih*16/9:594,setsar=1,boxblur=luma_radius=min(h\,w)/20:chroma_radius=min(cw\,ch)/20[bg];[bg][0:v]overlay=(W-w)/2:0'

答案1

使用

ffmpeg -i /www/1.jpg -lavfi '[0:v]scale=1056:594,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[0:v]scale=-1:594[pic];[bg][pic]overlay=(W-w)/2:(H-h)/2' /www/output.jpg

首先,创建具有模糊效果的画布,尺寸精确为 1056.594。然后缩放图像-1:594--1此处表示按比例缩放宽度。第二次缩放的结果叠加在第一次缩放的中心。

您有一张图片,所以这里不需要 -vframes 或 -vsync。

相关内容