Skip to content

revert(producer): drop renderStretch fit_to_scene retime (#2676)#2730

Merged
xuanruli merged 1 commit into
mainfrom
revert-renderstretch-2676
Jul 22, 2026
Merged

revert(producer): drop renderStretch fit_to_scene retime (#2676)#2730
xuanruli merged 1 commit into
mainfrom
revert-renderstretch-2676

Conversation

@xuanruli

Copy link
Copy Markdown
Contributor

Reverts #2676 (renderStretch).

Why

renderStretch tried to fix the fit_to_scene stutter (a composition shorter than its scene is frame-held by the compositor) by re-timing the GSAP timeline at render: emit target-length output and scale the per-frame seek across [0, intrinsic]. Local render tests show this cannot work — seeking a 1s-authored timeline more finely does not create new motion. The extra output frames are near-duplicates of their neighbours (sub-pixel deltas collapse on capture), so a 1s composition still yields ~30 distinct frames regardless of renderStretch. Measured: a 1s composition renders 30 unique frames at 30fps and stays ~30 unique under renderStretch; only 118 unique at a native 120fps render.

What replaces it

The correct fix needs no producer change: the producer already honours the fps override, and rendering a short composition at a scene-scaled fps (ceil(output_fps * scene / intrinsic)) produces genuinely distinct frames that fill the stretched clip. That lives entirely in experiment-framework (#42766) — it computes the fps and passes it through the existing fps field. No renderStretch plumbing required.

Ref: VA-1859.

@xuanruli xuanruli changed the title Revert "feat(producer): renderStretch to re-time short compositions across longer scenes (#2676)" revert(producer): drop renderStretch fit_to_scene retime (#2676) Jul 22, 2026
@xuanruli
xuanruli merged commit 69446e7 into main Jul 22, 2026
78 of 89 checks passed
@xuanruli
xuanruli deleted the revert-renderstretch-2676 branch July 22, 2026 02:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants