FFmpeg 旋转透明图像 colorfill 无法正常工作

FFmpeg rotated transparent images colorfill not working properly

我正在缩放和旋转透明 (spade.png) 图像并将其作为输入图像的叠加层并保存 output.png。这是我的命令:

ffmpeg -y -i input.png -i spade.png -filter_complex [1]scale=120:114,setsar=1,format=bgra,rotate=0.78:c=none:ow=rotw(0.78):oh=roth(0.78)[s];[0][s]overlay=728-114*sin(0.78):177[out] -pix_fmt bgra -strict experimental -s 640x360 -map [out] output.png

shovel.png (250x238) :

当我不缩放时spade.png,它显示正常:

但是当我 scale + rotate spade.png 时,colorfill 无法正常工作:

这是一个已知的 ffmpeg 错误吗?还是我以错误的顺序使用了 -filter_complex 参数?我应该使用另一个 pix_frmt 吗?有任何想法吗?谢谢

设置c=black@0。这将用黑色填充填充区域,但 alpha 为 0,因此在叠加期间,这些像素不会被叠加。