From f13c30e1f2d84dac8a824a8bd0d85f03b277060a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20=C3=81ngel?= Date: Mon, 11 May 2026 20:56:47 -0700 Subject: [PATCH] fix(core): skip media preloader activation in render mode MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit mediaPreloader.refresh() was called unconditionally, setting lazy=true for compositions with ≥6 clips even in render mode. player.seek then called preloadAroundTime() which evicted clips via src clearing, destroying buffered data needed for frame-accurate capture. Skip refresh() when __HF_EXPORT_RENDER_SEEK_CONFIG is set so isLazy() stays false and the preloader is completely inert during renders. --- packages/core/src/runtime/init.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/runtime/init.ts b/packages/core/src/runtime/init.ts index 65c19bc9f..f10e3fd48 100644 --- a/packages/core/src/runtime/init.ts +++ b/packages/core/src/runtime/init.ts @@ -1243,7 +1243,7 @@ export function initSandboxRuntimeModular(): void { mediaEl.addEventListener("durationchange", scheduleMetadataDurationHydration); } - if (newElementsBound) { + if (newElementsBound && !isRenderMode) { mediaPreloader.refresh(); }