Files
effectcraft/crates/render
vangel76 82cef51617 Frame blending averages the source frames a comp frame skips over (#3180)
Footage interpreted at a much higher frame rate than the comp (for example a
60 fps clip interpreted as 600 fps in a 25 fps comp) showed no frame blending.
Frame Mix only cross-faded the two source frames around the comp frame's
source time, and only when that time fell between frames. With a whole-number
ratio every comp frame lands exactly on a source frame, so nothing blended,
and at other ratios at most two of the many skipped frames were used.

When a comp frame runs through at least four source frames (conformed rate,
time stretch or time remap), Frame Mix and Pixel Motion now average the
source frames that comp frame spans, each weighted by how much of it the span
covers; spans over 16 frames are sampled at 16 evenly spread frames. Played
backwards, the span ends with the comp frame's own source frame.

The speed is measured locally (over 1/16 of a comp frame) and must agree with
the difference to the next comp frame, so a time remap jump (a hold followed
by a cut, a loop wrapping back) stays crisp instead of smearing across the
jump. Reduced-resolution previews mix frames at the reduced size.

Below four source frames per comp frame (slow-downs, equal rates, 60p in a
30, 25 or 24 fps comp, 50p in 25) nothing changes. The threshold and the
16-frame cap are named constants, pending a comparison with After Effects.

The layer cache key, and the key of a layer that selects a frame-blended
footage layer as an effect input, now include how far the source runs during
the comp frame, which the mix depends on.

Fixes #3180
2026-11-07 12:24:04 +01:00
..