Skip to content

VPAAMP-919:additional low latency-specific VPA metrics - #1828

Open
varshnie wants to merge 1 commit into
dev_sprint_25_2from
feature/VPAAMP-919
Open

VPAAMP-919:additional low latency-specific VPA metrics#1828
varshnie wants to merge 1 commit into
dev_sprint_25_2from
feature/VPAAMP-919

Conversation

@varshnie

@varshnie varshnie commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Reason for change:Added target latency as part of playbackProgressUpdate
Risks: p1

@varshnie
varshnie requested a review from a team as a code owner August 5, 2026 09:26
@varshnie
varshnie requested a review from Copilot August 5, 2026 09:26

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR extends AAMP’s progress update / ProgressEvent pipeline to expose the latency monitor’s target latency as an additional low-latency-specific metric (surfaced through the JS bindings for VPA telemetry).

Changes:

  • Add mTargetLatency to ProgressEvent, with constructor parameter + getter.
  • Populate targetLatency in PrivateInstanceAAMP::MonitorProgress() and include it in progress logging.
  • Expose targetLatency on the JS progress-update event object in both JS listener implementations.

Scores: Completeness 8/10, Assumptions 7/10, Clarity 8/10, CostRisk 4/10 | Critique: Clear diffs and intent, but lacks explicit unit/activation semantics and doesn’t show test updates for the API change. | Improve: Add “units (ms) + when it is 0” and “updated utests/fakes” to the PR description.

Reviewed changes

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

Show a summary per file
File Description
priv_aamp.cpp Computes target latency from the latency monitor and adds it to ProgressEvent + progress log output.
AampEvent.h Extends ProgressEvent with mTargetLatency, constructor parameter, and a getter declaration.
AampEvent.cpp Wires mTargetLatency through the constructor and implements getTargetLatency().
jsbindings/jseventlistener.cpp Adds targetLatency property to the JS progress-update event.
jsbindings/jsbindings.cpp Adds targetLatency property to the JS progress-update event (alternate listener path).
Suppressed comments (1)

AampEvent.h:807

  • Changing ProgressEvent's constructor signature requires updating the unit-test fake and tests that define/call this constructor (e.g., test/utests/fakes/FakeAampEvent.cpp and test/utests/tests/AampEventTests/AampEventTests.cpp). As-is, this will break the utest build and also leaves the fake without a getTargetLatency() implementation if anything links against it.
	ProgressEvent(double duration, double position, double start, double end, float speed, long long pts, double videoBufferedDuration, double audioBufferedDuration, std::string seiTimecode, double liveLatency, double targetLatency, BitsPerSecond profileBandwidth, BitsPerSecond networkBandwidth, double currentPlayRate, std::string sid);

Comment thread priv_aamp.cpp
Comment thread AampEvent.h
@varshnie
varshnie force-pushed the feature/VPAAMP-919 branch 2 times, most recently from a75865e to 2ea792b Compare August 5, 2026 09:48
Reason for change:Added target latency as part of playbackProgressUpdate
Risks: p1

Signed-off-by: varshnie <varshniblue14@gmail.com>
@varshnie
varshnie force-pushed the feature/VPAAMP-919 branch from 2ea792b to 0af3571 Compare August 5, 2026 09:53
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.

2 participants