-
Notifications
You must be signed in to change notification settings - Fork 7
RDKEMW-11639 : player-interface component separation #843
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: support/2.11.1_8.4
Are you sure you want to change the base?
Conversation
VPLAY-12010,RDKEMW-11257:
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Refactor LIBAAMP_DEPENDS to consolidate dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request implements component separation for RDKEMW-11639 by externalizing middleware and platform-related code from AAMP. It introduces a new build option (CMAKE_EXTERNAL_PLAYER_INTERFACE_DEPENDENCIES) that allows using player interface components from an external repository instead of the built-in middleware.
Changes:
- Adds installation script for external middleware-player-interface components with pkg-config generation
- Modifies CMake build system to support conditional compilation with external vs internal middleware dependencies
- Improves test robustness with better null handling and symbol visibility controls to prevent GLib/GStreamer clashes
Reviewed changes
Copilot reviewed 9 out of 10 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/install_middleware_interfaces.sh | New script to clone, build, and install external middleware components from rdkcentral repository |
| install-aamp.sh | Integrates new middleware installation script into main build process |
| CMakeLists.txt | Adds conditional logic to switch between external and internal middleware dependencies |
| middleware/test/utests/tests/OcdmBasicSessionAdapterTests/FunctionalTests.cpp | Improves test matcher with null pointer safety and adds default mock behaviors |
| middleware/test/utests/mocks/MockOpenCdmSessionAdapter.h | Adds mock methods for getUsableKeys and setKeyId |
| middleware/test/utests/fakes/Fakeopencdmsessionadapter.cpp | Implements setKeyId fake method under USE_OPENCDM_ADAPTER |
| middleware/test/utests/fakes/FakeGLib.cpp | Adds symbol visibility pragmas to prevent export conflicts |
| middleware/test/utests/fakes/CMakeLists.txt | Configures hidden symbol visibility for fake library to avoid GLib crashes |
| middleware/InterfacePlayerRDK.cpp | Adds informational log message to indicate use of internal library |
| .gitignore | Excludes middleware unit test build directory |
middleware/test/utests/tests/OcdmBasicSessionAdapterTests/FunctionalTests.cpp
Show resolved
Hide resolved
| do_clone_fn https://github.com/rdkcentral/middleware-player-interface.git | ||
|
|
||
| cd middleware-player-interface | ||
| git checkout feature/RDKEMW-11639 |
Copilot
AI
Jan 13, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hardcoding the git branch 'feature/RDKEMW-11639' in the installation script makes this non-reusable and will break once this feature branch is merged or deleted. The script should either use a stable branch name (like 'main' or 'master') or make the branch name configurable through an environment variable or parameter.
| git checkout feature/RDKEMW-11639 | |
| local middleware_branch="${MIDDLEWARE_PLAYER_INTERFACE_BRANCH:-main}" | |
| git checkout "$middleware_branch" |
RDKEMW-11639 : player-interface component separation
Reason for change : remove middleware and platform related code from AAMP
Test Steps : mentioned in ticket
Signed-off by : R.Naren naren_ramesh@comcast.com