# HTML5 Shared Controls Design ## Status Implemented and branch-validated as part of the embedded-MPV/shared-controls merge plan. This rebuilds the unique HTML5 integration proposed in #1152 on top of the merged shared-controls contract and frame-copy implementation, without merging the obsolete stacked history from #1150/#1151. The guarded integration is pending pull-request review and merge; the rollout default remains off. ## Goal Use `app-player-controls` as the optional controls UI for the built-in HTML5 player while preserving its current native controls and behavior when `WEB_PLAYER_SHARED_CONTROLS` is disabled. ## Non-goals - Do not enable `WEB_PLAYER_SHARED_CONTROLS` by default. - Do not change the generic `PlayerController` or `WebVideoControlsAdapter` contracts. - Do not infer live/VOD state from `HTMLVideoElement.duration`. - Do not migrate Video.js or ArtPlayer in this PR. - Do not redesign playback diagnostics or replace their existing banner. - Do not add engine-specific knowledge to the generic shared-controls adapter. ## Why the old #1152 commit is not merged directly The old commit correctly identified the HTML5 `