Concat 视频本身,但相反,使用 ffmpeg

Concat a video with itself, but in reverse, using ffmpeg

我能够通过以下方式逆转:

ffmpeg -i input.mp4 -vf reverse output_reversed.mp4

我可以连接:

ffmpeg -i input.mp4 -i input.mp4 -filter_complex "[0:0] [0:1] [1:0] [1:1] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4

但是我可以用一条命令连接反向版本的视频吗?

我想要实现的是乒乓效果,视频播放一次,然后立即向后播放。

谢谢!

从技术上讲,您可以使用

ffmpeg -i input.mp4 -filter_complex "[0:v]reverse,fifo[r];[0:v][0:a][r] [0:a]concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4

但是反向过滤器对于大视频会占用大量内存。我添加了 fifo 过滤器以避免丢帧。但是测试看看。 (我没有倒过音频)

如果您的剪辑没有音频,上述命令将抛出一个错误——改为使用:

ffmpeg -i input.mp4 -filter_complex "[0:v]reverse,fifo[r];[0:v][r] concat=n=2:v=1 [v]" -map "[v]" output.mp4