VPAAMP-684:Tech Fault error leads to Blue Screen when rewinding from …#1693
Open
varshnie wants to merge 1 commit into
Open
VPAAMP-684:Tech Fault error leads to Blue Screen when rewinding from …#1693varshnie wants to merge 1 commit into
varshnie wants to merge 1 commit into
Conversation
varshnie
force-pushed
the
feature/VPAAMP-684
branch
3 times, most recently
from
July 8, 2026 14:44
dc841f1 to
939f6d4
Compare
Vinish100
reviewed
Jul 9, 2026
| uriInfo = dlInfo->uriList[dlInfo->bandwidth]; | ||
| } | ||
| // Fallback to current descriptor bandwidth if request-scoped key is not present. | ||
| else if (dlInfo->uriList.find(fragmentDescriptor.Bandwidth) != dlInfo->uriList.end()) |
Contributor
There was a problem hiding this comment.
Update dlInfo->bandwidth if there is a mismatch with fragmentDescriptor.Bandwidth as we have already selected the url for new bandwidth
…live edge into CDAI ads Reason for change:Init frag failure due to mismatched bandwitdh Risks: p1 Signed-off-by: varshnie <varshniblue14@gmail.com>
varshnie
force-pushed
the
feature/VPAAMP-684
branch
from
July 9, 2026 09:08
939f6d4 to
c6a2c81
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Fixes a false “bitrate mismatch → rampdown” path that can cause init-fragment failure during live→CDAI ad transitions (e.g., rewind from live edge), by comparing the FOG-reported bitrate against the bandwidth captured at job submission time rather than a potentially updated fragmentDescriptor.Bandwidth.
Changes:
- Update
MediaStreamContext::CacheFragment()to compare FOG bitrate against anexpectedBandwidthderived frommActiveDownloadInfo->bandwidth. - Add null-guards around
AampCacheHandleraccess when retrieving/inserting init fragments. - Add focused unit tests covering the init-segment race scenario and ensuring genuine bitrate mismatches still trigger rampdown.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| MediaStreamContext.cpp | Implements expectedBandwidth comparison, adds cache-handler null checks, and adjusts bandwidth/URI selection logic. |
| test/utests/tests/CacheFragmentTests/CacheFragmentTests.cpp | Adds new tests validating the expected-bandwidth behavior for init and media segments. |
Comment on lines
+76
to
+80
| BitsPerSecond expectedBandwidth = fragmentDescriptor.Bandwidth; | ||
| double downloadTimeS = 0; | ||
| AampMediaType actualType = (AampMediaType)(initSegment ? (eMEDIATYPE_INIT_VIDEO + mediaType) : mediaType); // Need to revisit the logic | ||
| if (mActiveDownloadInfo && mActiveDownloadInfo->bandwidth > 0) | ||
| { |
Comment on lines
+1069
to
+1072
| if (dlInfo->bandwidth != fragmentDescriptor.Bandwidth) | ||
| { | ||
| dlInfo->bandwidth = fragmentDescriptor.Bandwidth; | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…live edge into CDAI ads
Reason for change:Init frag failure due to mismatched bandwitdh Risks: p1