从 98% 黑色淡入 (ffmpeg)

从 98% 黑色淡入 (ffmpeg)

能否使用 ffmpeg 实现从 98% 黑色淡入的淡入效果?换句话说,您只能勉强看到第 0 帧纯黑色下方的内容?

我可以使用此命令,但问题是它会从 100% 黑色淡入。我希望能够将其设置为任意百分比。

-filter_complex "fade=t=in:st=0:d=4"

我该如何做呢?

答案1

开始时间st表示视频应完全空白的时间戳。持续时间d表示过滤器将插入视频以使其完全可见的时间戳间隔。因此,为了从 98% 黑色开始并在 4 秒内达到完全可见性,计算淡入淡出应从哪个时间戳开始,以便第一帧具有 98% 的黑色。

因此,不透明度变化率 = 4.0/98 ~= 0.0408 秒。因此,如果淡入淡出从 -0.0816 秒开始并在 4 秒结束,则 0 处的帧将淡入淡出 98%。因此,淡入淡出将是

fade=t=in:st=-0.0816:d=4.0816

然而,在这个特殊情况下有一个小问题。st不能为负数。因此,解决方法是偏移淡入淡出前后的时间戳。

setpts=PTS+1/TB,fade=t=in:st=0.9183:d=4.0816,setpts=PTS-1/TB

淡入淡出st也必须偏移以解释暂时新的时间戳。

相关内容