Skip to content

fix(preview): recover active video after preload timeout - #45

Merged
lightninglu10 merged 1 commit into
codepress-mainfrom
fix/host-video-first-frame
Sep 9, 2026
Merged

fix(preview): recover active video after preload timeout#45
lightninglu10 merged 1 commit into
codepress-mainfrom
fix/host-video-first-frame

Conversation

@lightninglu10

Copy link
Copy Markdown

Fix video freezing on the first frame while audio continues after a slow media request. A preload timeout previously cleared an already assigned video element and left clip assignments pointing at it. Preserve the active element for late recovery, dispose failed elements when unused, and retain recovered buffers across cuts. Reconcile a newly ready host Player clock with live playback intent, including delayed readiness.

Releases editor surface 0.3.16.

Validation: full source check and provenance pass; 24 focused pool/video/player tests and installed consumer 2/2 pass. Real Chrome and WebKit delayed HTTP-range media probes recover after the accelerated preload timeout and reuse the same video element at the next cut. Original pool fails the same probe with cleared src/zero frames. Generated media fixture evidence, not authenticated backend playback proof. This fixes timeout recovery; it does not claim all network buffering is eliminated.

@codepress-reviewer-dev

Copy link
Copy Markdown

Starting initial review of b0d6486b from baseline d88ed93a... 👀

View automation run

@lightninglu10 lightninglu10 self-assigned this Sep 9, 2026

@codepress-reviewer-dev codepress-reviewer-dev Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. The pool now preserves an assigned video after preload failure, disposes failed elements once released, and retains recovered buffers after late canplay. Player reconciliation uses live playback intent and runs when a delayed Player becomes ready.

The existing ownership boundaries remain appropriate, and this is one cohesive playback fix. The added tests cover timeout recovery, retry cleanup, disposal races, and host/standalone readiness behavior.

Reviewed all five changed files and traced the surrounding command planner and video acquisition/release paths. No actionable findings. This was a source review; I did not rerun tests or independently reproduce the browser probes reported in the PR.

Reviewed `d88ed93a`...`b0d6486b`. Diff collection and GitHub posting were handled by the automation.

View automation run

@codepress-reviewer-dev

Copy link
Copy Markdown

Review head b0d6486bbb6dff0ef232b64b4d1a074cda7eaf3e; round 1; 5 reviewed file(s), 0 pending/skipped file(s). 0 subsystem record(s) retained; 0 omitted.

View automation run

@lightninglu10
lightninglu10 merged commit 8ee94fc into codepress-main Sep 9, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant