我正在尝试在主视频顶部添加绿屏视频叠加层。绿色视频叠加层就像视频中每隔几分钟出现的竖起大拇指。我有一个 ffmpeg 命令可以完美地添加视频叠加层。(我从这里)
ffmpeg -i input.mp4 -i green.mp4 -filter_complex \
'[1:v]colorkey=0x00ff00:0.4:0.2[ckout];[0:v][ckout]overlay[out]' \
-map '[out]' -c:v libx264 -pix_fmt yuv420p res.mp4
但是 green.mp4 刚好出现在开头。但我尝试以固定的时间间隔添加它。比如 5 分钟、10 分钟等等。类似这样。
我甚至可以让它在视频中出现一次,但在指定的时间。如果可能的话,最好让它重复几次,而且不要太复杂。
答案1
只需enable
向过滤器添加适当的属性:
ffmpeg -i input.mp4 -i green.mp4 -filter_complex \
"[1:v]colorkey=0x00ff00:0.4:0.2[ckout];[0:v][ckout]overlay=enable='eq(mod(t, 300), 0)'[out]" \
-map '[out]' -c:v libx264 -pix_fmt yuv420p res.mp4
mod
用于通过与 进行比较来检查可整除间隔0
。您可以改为与 进行比较,例如1
(x
) 并使用lt
而不是 来eq
使覆盖显示更长时间(x
秒)。300
因为 300 秒 = 5 分钟,所以间隔