我如何混合/平均 N 个帧而不是仅仅 2 个帧?

我如何混合/平均 N 个帧而不是仅仅 2 个帧?

要在 FFmpeg 中平均两帧,可以使用类似“tblend=all_mode=average,framestep=2”的方法。但是,这仅支持一次混合两帧。菊花链连接仅允许您混合 2^N 帧。如果我想混合 3 帧、5 帧、6 帧、7 帧、9 帧等等,该怎么办?

特别是对于我的项目,我需要将 5 个视频帧平均为 1 个。源素材为 120fps,因此这种转换会将帧速率有效地降低到 24。使用 tblend,这根本不可能实现。我还能怎么做呢?

答案1

您可以使用 tmix 过滤器,自 ffmpeg v4.1 开始可用

基本语法是

tmix=frames=5:weights="1 1 1 1 1",select='not(mod(n\,5))'

tmix 将每帧与后面 4 帧混合。然后 select 过滤器仅保留每 5 帧中的第一个。

文档

相关内容