You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR adds render progress time estimations to renderMediaOnWeb, aligning its onProgress callback with the renderMedia function.
Why:
Previously, renderMediaOnWeb only provided frame counts in its progress updates. This enhancement introduces renderedDoneIn, encodedDoneIn, and renderEstimatedTime fields, offering a more complete and consistent progress tracking experience for users across Remotion's rendering capabilities.
What's changed:
The RenderMediaOnWebProgress type has been extended to include new time estimation fields.
The web renderer now computes these estimations using a rolling recent-frame timing approach, consistent with renderMedia.
Documentation and browser-based tests have been updated to reflect and validate the new progress payload.
Tradeoffs:
Introduces additional, lightweight computation within the render loop to calculate time estimations.
Root cause: The 4 failing tests in packages/renderer/src/test/render-still.test.ts (Need to pass valid metadata x2, Returns buffer in promise result, Catches invalid image format) timed out at 30s on macOS CI. Each test calls ensureBrowser() which downloads Chrome Headless Shell (~90 MB). On macOS runners, this download consumed most of the 30-second timeout budget, leaving insufficient time for the actual test.
Fix: Increased test timeouts from 30,000ms to 90,000ms in all 4 tests. This is unrelated to the PR's web-renderer changes — the failing tests are in @remotion/renderer, a different package entirely.
Commit:8ecc850 — @remotion/renderer: Increase render-still test timeouts for macOS CI
samohovets
changed the title
Web-renderer progress estimations@remotion/web-renderer: add render progress estimations
Mar 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds render progress time estimations to
renderMediaOnWeb, aligning itsonProgresscallback with therenderMediafunction.Why:
Previously,
renderMediaOnWebonly provided frame counts in its progress updates. This enhancement introducesrenderedDoneIn,encodedDoneIn, andrenderEstimatedTimefields, offering a more complete and consistent progress tracking experience for users across Remotion's rendering capabilities.What's changed:
RenderMediaOnWebProgresstype has been extended to include new time estimation fields.renderMedia.Tradeoffs: