我想将 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];
- 它在视频周围添加了一个黄色框,但我不想添加。
- 它可以提高视频和音频的速度,就像快进一样。
- 输出视频在 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 秒开始。