12 张 / 秒 → 60 fps
一拍二、一拍三的动画,先去掉重复帧,再补帧
24fps 的动画文件里,同一张画往往连续两帧或三帧,每秒不同的画其实只有 12 张或 8 张。普通补帧把重复的画面当作“没有运动”,结果就是停一下、跳一下。打开移除重复帧后,FrameSmoother 会跳过重复的画面,把每张画放在它首次出现的时刻,并按你选择的帧率生成画与画之间的帧,全程在 iPhone 上完成。
12 / 8 张一拍二、一拍三的 24fps 文件中,每秒不同的画
16.7 ms目标 60fps 时的画面间隔
默认关闭处理手绘动画时打开的开关
01Frame by frame
3 张画,两种补法
最上面一行是一拍二的 24fps 文件:A、B、C 三张画各显示两帧。下面两行是同一段的 60fps 结果。圆点是运动中角色的位置。
文件中:24fps、一拍二(A A B B C)
直接补帧:停、动、停、动
移除重复帧:每帧前进相同的距离
文件中的画(带边框)同一张画(没有运动)生成的帧
这是示意图,不是 App 的输出。位置经过理想化处理,重点是看运动发生在哪里。
02In numbers
每秒的画数,处理前后
| 24fps 文件中的动画 | 张 / 秒 | 画与画的间隔 |
|---|---|---|
| 一拍一 | 24 | 41.7 ms |
| 一拍二 | 12 | 83.3 ms |
| 一拍三 | 8 | 125 ms |
| FrameSmoother,目标 60fps | 60 | 16.7 ms |
什么算作“重复”
| 检查项 | 值 |
|---|---|
| 亮度采样点 | 256 × 144 点 |
| 每个 16 × 16 点的窗口(相互重叠一半)中,变化超过 24 级(共 255 级)的点最多为 | 3 |
| 整个画面的平均变化不超过 | 1.5 级 |
| 只移除距上一张保留帧这段时间以内的重复 | 3/24 秒(125 ms) |
两个条件都满足才算重复,因此口型变化、眨眼这类细小变化的帧会被保留,淡入淡出也不会被误判为重复。持续超过 125 ms 的静止画面会保持静止,不会变成缓慢滑向下一张画。视频时长不变,声音也会保留。
03On the iPhone
在 FrameSmoother 里打开
iPhone 的“照片”App 没有移除重复帧或生成新帧的设置。在 FrameSmoother 里,移除重复帧只需一个开关。
- 主页
轻点选择视频并选择视频。
- 补帧设置 › 输出帧率
保持目标帧率,选择 60fps。
- 动画
打开移除重复帧。下方的说明是:“适用于一拍二、一拍三的动画。跳过重复的画面,让画与画之间的动作流畅衔接。”
- 右上角
轻点加入队列。队列会打开。
- 队列
当该行显示完成时,轻点它,在画面切换处逐帧查看结果。关闭预览回到队列后,用该行上向下箭头的按钮存储到照片,用向上箭头的按钮共享。
04More comparisons