diff --git a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts index 79d8a8267..15be694c2 100644 --- a/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts +++ b/apps/web/src/pages/generate/hooks/useCanvasPlayer.ts @@ -492,11 +492,6 @@ export function useCanvasPlayer( decoderReady = true // 标记缓冲结束,让 UI 开始渲染 setState((s) => ({ ...s, isBuffering: false })) - - // 更新视频尺寸(用于 aspect ratio) - if (meta.videoWidth > 0 && meta.videoHeight > 0) { - videoDimRef.current = { width: meta.videoWidth, height: meta.videoHeight } - } } catch (err) { console.error("[useCanvasPlayer] Decoder configure failed for segment:", err) return @@ -875,12 +870,7 @@ export function useCanvasPlayer( segmentMetaRef.current = metas - // 3. 设置视频尺寸(用第一个片段的尺寸) - if (metas[0].videoWidth > 0 && metas[0].videoHeight > 0) { - videoDimRef.current = { width: metas[0].videoWidth, height: metas[0].videoHeight } - } - - // 4. 按需解码:初始只解码前 3 个片段,后续通过 decodeAroundPosition 动态加载 + // 3. 按需解码:初始只解码前 3 个片段,后续通过 decodeAroundPosition 动态加载 // 避免一次性全量解码导致 frameQueue 环形缓冲区旧帧被丢弃引发黑屏 decodedSegmentsRef.current.clear() const initGen = decodeGenerationRef.current