Cherry pick PR #9477: starboard: Refactor h5vcc plumbing to use a dedicated struct and extension#10037
Cherry pick PR #9477: starboard: Refactor h5vcc plumbing to use a dedicated struct and extension#10037cobalt-github-releaser-bot wants to merge 6 commits intomainfrom
Conversation
…nsion (#9477) This change consolidates individual experimental features into a single 'ExperimentalFeatures' struct, updates the player worker handler interface to accept this struct, and introduces a new Starboard extension for cross-platform configuration. The Android implementation has been updated to use this new pattern, and redundant internal configuration headers have been removed. Issue: 480134029 (cherry picked from commit 3eb80e3)
|
Caution There were merge conflicts while cherry picking! Check out cherry-pick-main-9477 and fix the conflicts before proceeding. Check the log at https://github.com/youtube/cobalt/actions/runs/24424649716 for details. |
🤖 Gemini Suggested Commit Message💡 Pro Tips for a Better Commit Message:
|
There was a problem hiding this comment.
Code Review
This pull request consolidates several specific Starboard extensions into a unified ExperimentalFeatures extension, simplifying the SbPlayer creation process and utilizing thread-local storage for feature management. The review feedback identifies a critical crash risk in the feature retrieval logic when overrides are absent, a type inconsistency in the extension header that prevents boolean features from being optional, and a regression in debug logging visibility that should be addressed to maintain field supportability.

Refer to the original PR: #9477
This change consolidates individual experimental features into a single 'ExperimentalFeatures' struct, updates the player worker handler interface to accept this struct, and introduces a new Starboard extension for cross-platform configuration. The Android implementation has been updated to use this new pattern, and redundant internal configuration headers have been removed.
Issue: 480134029