有没有办法使用 ffmpeg 调整屏幕中心的视频

有没有办法使用 ffmpeg 调整屏幕中心的视频

我想将 gif 添加为视频的背景。因此 gif 将占据整个区域,而视频将位于中心。

我正在使用这个命令,但效果不太好。它只是裁剪视频的顶部和左侧,而视频的底部和右侧仍然被拉伸到整个空间。

ffmpeg -ss 6 -i clip.mp4 -ignore_loop 0 -i b.gif -filter_complex "[0:v]crop=in_w-2*28:in_h-2*25[base];[base][1:v]overlay=15:H-h-25:shortest=1" -codec:v libx264 out.mp4

此命令应该可以满足我的需要,但是它存在三个问题。

ffmpeg -i main.mp4 -vf "movie=bg.mp4:loop=200,hue=s=0[bg];[in]setpts=PTS/2,scale=iw/2:-1,pad=iw+20:ih+20:10:10:color=yellow[m];
  1. 它在视频周围添加了一个黄色框,但我不想添加。
  2. 它可以提高视频和音频的速度,就像快进一样。
  3. 输出视频在 10.15 秒后暂停,但背景音乐仍在播放,直到视频结束。

有什么方法可以修复这些命令吗?

答案1

使用

ffmpeg -ss 6 -i clip.mp4 -ignore_loop 0 -i b.gif -filter_complex "[1:v]hue=s=0[base];[0:v]scale=iw/2:-1[vid];[base][vid]overlay=(W-w)/2:(H-h)/2:shortest=1" -codec:v libx264 -c:a copy out.mp4

我保留了它-ss 6,所以您的主视频及其音频将从输入文件的 6 秒开始。

相关内容