nickr
2022-12-20 19:51:10 +08:00
你可以使用 ffmpeg 的 color 滤镜来实现这个效果。
首先,使用 color 滤镜生成一个全黑视频:
ffmpeg -f lavfi -i color=black -t 2 black.mp4
然后,使用 overlay 滤镜将全黑视频叠加到原视频的最后 2 秒:
ffmpeg -i input.mp4 -i black.mp4 -filter_complex "[0:v][1:v]overlay=eof_action=pass[out]" -map "[out]" output.mp4
这样,你就可以在视频最后 2 秒渐变为全黑了。
注意,上面的命令假定原视频和全黑视频都使用了相同的帧率。如果帧率不同,你可以使用 setpts 滤镜来调整全黑视频的帧率,例如:
ffmpeg -f lavfi -i color=black -vf "setpts=PTS/2" -t 2 black.mp4
这样就可以将全黑视频的帧率减半,使它与原视频的帧率相匹配。