RIFE VFI 插帧 帧数计算公式
在常见的 ComfyUI-Frame-Interpolation / RIFE VFI 里,公式是:
输出帧数 = (原始帧数 - 1) × multiplier + 1
也可以理解为:
输出帧数 = 原始帧数 + (原始帧数 - 1) × (multiplier - 1)
因为 RIFE 是在相邻两帧之间插帧,30 帧实际上只有:
30 - 1 = 29 个间隔
每个间隔如果 multiplier = 2,就是:
原帧A + 插入1帧 + 原帧B
所以:
输出帧数 = (30 - 1) × 2 + 1
= 29 × 2 + 1
= 59 帧
不是 60 帧。
ComfyUI-Frame-Interpolation 的代码逻辑也是这样:它遍历的是 len(frames) - 1 个相邻帧对;每个帧对里用 range(1, multiplier) 生成中间帧,也就是 multiplier - 1 张;最后再单独追加原始最后一帧。(GitHub)
所以你的情况:
原始帧数 = 30
multiplier = 2
RIFE 输出 = 59 帧
如果你还要剪掉最后一帧,那就是:
59 - 1 = 58 帧
也就是:
最终帧数 = (原始帧数 - 1) × multiplier
例如:
(30 - 1) × 2 = 58 帧
这个正好适合你前面说的首尾帧/循环视频场景:RIFE 后删最后一帧,避免下一段开头重复。
浙公网安备 33010602011771号