使用FFMPEG将具有缩放比例和旋转度的图像添加到视频叠加中吗?

时间:2018-11-16 10:24:37

标签: image video ffmpeg rotation overlay

我想为带有参数的视频添加叠加图像

1:w:h->是视频中图像的宽度和高度

2:r->弧度是图像的旋转

3:中心(x,y)->是视频中图像的中心点

这是我的FFMPEG命令:

  

-i video.mp4 -i image.png filter_complex [1:v]scale=w:h[scale];[scale]rotate=r:ow=iw:oh=ih[rotate];[0:v][rotate]overlay=x-(w/2):y-(h/2)

但是结果不正确。仅适用于比例= 1和旋转= 0弧度的情况

我该怎么做?

2 个答案:

答案 0 :(得分:0)

使用

[1:v]scale=w:h,pad=iw+4:ih+4:black@0[scale];[scale]rotate=r:ow='rotw(r)':oh='roth(r)'[rotate]

在旋转之前,向图像中添加了一些透明填充。这是因为旋转滤镜将使用输入的边框像素颜色填充画布中的间隙。同样,必须调整输出大小以适应旋转后的整个图像。有关旋转滤镜,请参见docs

答案 1 :(得分:0)

Ffmpeg命令可在视频上旋转,缩放,覆盖和设置图像持续时间

ffmpeg -i input.mp4 -i inputImg.png -filter_complex \"[1:v] rotate=90:c=none:ow=rotw(iw):oh=roth(ih) [rotate];[rotate]scale=100:-1[scale];[0:v][scale] overlay=0:0:enable='between(t,0,2)'[out]\" -map [out] -pix_fmt yuv420p -c:a copy output.mp4