Changelog
Fixed

Fades and opacity land where you put them

Fixes three bugs: audio fades on a trimmed clip, the fade-out of a clip shorter than its source, and keyframed opacity that played late by the trim.

API

Three timing bugs, all with the same root cause. A filter attached to a clip was not bounded to that clip, so the engine counted its keyframes from the start of the source file rather than from the part being played.

  • A trimmed clip lost both its fades. The ramps landed outside the frames it actually played, so fadeIn and fadeOut did nothing.
  • A clip shorter than its source lost its fade-out, because the ramp counted back from the end of the file.
  • Keyframed opacity on a trimmed clip played late, by exactly the trim.

Every filter on a clip is now bounded to the whole clip, which is also what a transition needs: the two sides of a crossfade keep the clip’s own volume and opacity instead of playing at full strength for the length of the overlap.

The engine’s behaviour here was measured before the fix, with a tone and a colour source, and four render checks now hold it in place.

Nothing changes in a timeline that was already right. Fades are in the compose audio docs and keyframes in the compose motion docs.

Fades and opacity both take keyframes, and those land on the right frames too.

Share