From df4de37f737a22a0f73da647b60f7cc9b4f92fd9 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Fri, 21 Aug 2026 21:11:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20MAX=5FINIT=5FFRAMES=20500=20=E2=86=92=20?= =?UTF-8?q?60=EF=BC=8C=E5=87=8F=E5=B0=91=20init=20=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E8=A7=A3=E7=A0=81=E5=B8=A7=E6=95=B0=E9=99=8D=E4=BD=8E=E6=92=AD?= =?UTF-8?q?=E6=94=BE=E6=8A=96=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit init 阶段解码 894 帧导致 getCurrentFrame 遍历过多帧,播放抖动。 改为每片段只解 60 帧(≈2s),播放时由 decodeAroundPosition 按需续解。 --- apps/web/src/pages/generate/hooks/useCanvasPlayer.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts index 1c6889240..de2448fce 100644 --- a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts +++ b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts @@ -10,7 +10,7 @@ import type { Movie, Sample } from "mp4box" // ── 常量 ── /** 初始化预解码最大帧数(约 2 秒 @30fps),后续帧通过 decodeAroundPosition 按需解码 */ -const MAX_INIT_FRAMES = 500 +const MAX_INIT_FRAMES = 60 /** * 规范化 mp4box 提取的 codec 字符串为 WebCodecs 兼容格式