diff --git a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts index 00afb22b6..15deeb87a 100644 --- a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts +++ b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts @@ -221,7 +221,7 @@ export function useCanvasPlayer( // ── 内部引用 ── const decoderRef = useRef(null) - const frameQueueRef = useRef(new FrameQueue(60)) + const frameQueueRef = useRef(new FrameQueue(600)) /** 已解码的片段索引集合,用于按需解码(先标记防重入,失败时移除允许重试) */ const decodedSegmentsRef = useRef(new Set()) /** 解码代数计数器,seek 时递增以作废正在进行的异步解码 */ @@ -609,7 +609,7 @@ export function useCanvasPlayer( // 先标记为解码中,防止下一帧渲染时重复发起解码 decodedSegmentsRef.current.add(i) try { - await decodeSegment(buffer, meta) + await decodeSegment(buffer, meta, 300) } catch (e) { // 解码失败则移除标记,允许后续重试 decodedSegmentsRef.current.delete(i)