Skip to content

VPLAY-11339: [DOC] eAAMPConfig_NativeCCRendering and setTextStyleOptions#1100

Merged
pstroffolino merged 4 commits intodev_sprint_25_2from
feature/VPLAY-11339_doc
Feb 27, 2026
Merged

VPLAY-11339: [DOC] eAAMPConfig_NativeCCRendering and setTextStyleOptions#1100
pstroffolino merged 4 commits intodev_sprint_25_2from
feature/VPLAY-11339_doc

Conversation

@Vinish100
Copy link
Contributor

Reason for change: Update documentation on CC related config and API
Test Procedure: NA, documentation update
Risks: None

@Vinish100 Vinish100 requested a review from a team as a code owner February 27, 2026 14:35
Copilot AI review requested due to automatic review settings February 27, 2026 14:35
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates documentation around inband closed-caption (CEA-608/708) handling to clarify how nativeCCRendering / eAAMPConfig_NativeCCRendering relates to CC lifecycle ownership and setTextStyleOptions usage across platforms (X1 vs non-XREReceiver).

Changes:

  • Expanded Doxygen/API documentation for PlayerInstanceAAMP::SetNativeCCRendering.
  • Expanded eAAMPConfig_NativeCCRendering enum documentation to describe intended platform behavior and defaults.
  • Rewrote the UVE API guide section for modern CC management with a platform summary and clearer runtime control examples.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
main_aamp.cpp Clarifies intended semantics and usage timing for SetNativeCCRendering via updated Doxygen.
AampConfig.h Adds detailed inline documentation for eAAMPConfig_NativeCCRendering behavior and default.
AAMP-UVE-API.md Updates UVE documentation for CC platform ownership and setTextStyleOptions guidance.

@Vinish100 Vinish100 force-pushed the feature/VPLAY-11339_doc branch from bdfb8a9 to 0471d71 Compare February 27, 2026 14:49
Reason for change: Update documentation on CC related config and API
Test Procedure: NA, documentation update
Risks: None

Signed-off-by: Vinish100 <vinish.balan@gmail.com>
@Vinish100 Vinish100 force-pushed the feature/VPLAY-11339_doc branch from 0471d71 to 80bbaee Compare February 27, 2026 14:59
Copilot AI review requested due to automatic review settings February 27, 2026 14:59
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings February 27, 2026 18:25
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings February 27, 2026 21:39
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

Comment on lines +2817 to +2819
* via PlayerCCManager: initialization on first frame, trickplay muting,
* parental control gating (SERVICE_PIN_LOCKED events), CEA-608/708 track
* selection, and session teardown on stop.
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

The “enable is true” section lists “initialization on first frame” as part of the gated behavior, but CC initialization happens unconditionally (e.g., PrivateInstanceAAMP::InitializeCC always calls PlayerCCManager::Init). Consider adjusting the wording so it’s clear this flag gates AAMP’s additional lifecycle/policy integration (trickplay status, parental control, release/teardown, etc.), not whether initialization occurs at all.

Suggested change
* via PlayerCCManager: initialization on first frame, trickplay muting,
* parental control gating (SERVICE_PIN_LOCKED events), CEA-608/708 track
* selection, and session teardown on stop.
* via PlayerCCManager: integrating CC with playback on first-frame
* presentation, applying trickplay muting, enforcing parental control
* gating (SERVICE_PIN_LOCKED events), driving CEA-608/708 track
* selection, and performing CC-specific session teardown on stop.
* Note that underlying CC components (e.g. PlayerCCManager::Init) are
* initialised unconditionally; this flag controls AAMP's additional
* lifecycle and policy integration, not whether CC is initialised.

Copilot uses AI. Check for mistakes.
Comment on lines +2822 to +2824
* behaviour or policy decisions (e.g. trickplay muting, parental-control
* integration, or CC-specific teardown). Internal components such as
* PlayerCCManager may still be initialised but internally it will be
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

Spelling is inconsistent with the rest of the codebase’s American English usage: “behaviour”/“initialised” should be “behavior”/“initialized”.

Suggested change
* behaviour or policy decisions (e.g. trickplay muting, parental-control
* integration, or CC-specific teardown). Internal components such as
* PlayerCCManager may still be initialised but internally it will be
* behavior or policy decisions (e.g. trickplay muting, parental-control
* integration, or CC-specific teardown). Internal components such as
* PlayerCCManager may still be initialized but internally it will be

Copilot uses AI. Check for mistakes.
Comment on lines +155 to +166
eAAMPConfig_NativeCCRendering, /**< Controls whether AAMP manages CC visibility/styles
directly via PlayerCCManager (true), or defers to an
external CC controller such as XREReceiver (false).
Default: false.
On X1 platforms XREReceiver owns CC; set to false so
AAMP does not interfere with trickplay muting, parental
control gating, or CC track selection.
On platforms without XREReceiver, set to true so AAMP
takes over the full CC lifecycle.
Note: Regardless of this flag, AAMP's CC APIs still
route through PlayerCCManager and apps must refrain from
using them when the flag is set to false.*/
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

This config’s doc says it controls whether AAMP “manages CC visibility/styles directly”, but the runtime gating for eAAMPConfig_NativeCCRendering is primarily around automatic lifecycle/policy integration (e.g., SetTrickplayStatus, SetParentalControlStatus, Release on stop, and a limited CEAPreferred override). Style/status/track APIs still call into PlayerCCManager regardless of this flag. Please update the comment to reflect the actual behaviors gated by the config so the header documentation matches runtime behavior.

Suggested change
eAAMPConfig_NativeCCRendering, /**< Controls whether AAMP manages CC visibility/styles
directly via PlayerCCManager (true), or defers to an
external CC controller such as XREReceiver (false).
Default: false.
On X1 platforms XREReceiver owns CC; set to false so
AAMP does not interfere with trickplay muting, parental
control gating, or CC track selection.
On platforms without XREReceiver, set to true so AAMP
takes over the full CC lifecycle.
Note: Regardless of this flag, AAMP's CC APIs still
route through PlayerCCManager and apps must refrain from
using them when the flag is set to false.*/
eAAMPConfig_NativeCCRendering, /**< Controls whether AAMP integrates PlayerCCManager with
the core playback lifecycle and platform CC policy.
When true, AAMP automatically propagates trickplay
status (SetTrickplayStatus), parental control status
(SetParentalControlStatus), and stop/release events
to PlayerCCManager, and may apply a limited CEA
preferred service override.
When false, these automatic lifecycle/policy updates
are suppressed so an external controller (for example,
XREReceiver on X1) can own CC lifecycle and policy.
Note: CC style/status/track APIs still route through
PlayerCCManager regardless of this flag; it does not
disable those APIs or directly control CC styling or
visibility.*/

Copilot uses AI. Check for mistakes.
@pstroffolino pstroffolino merged commit d2e968e into dev_sprint_25_2 Feb 27, 2026
8 of 10 checks passed
@pstroffolino pstroffolino deleted the feature/VPLAY-11339_doc branch February 27, 2026 22:06
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.

3 participants