Skip to content
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

Release/2.1.0 RDKEMW-1441 #7

Merged
merged 57 commits into from
Feb 14, 2025
Merged

Release/2.1.0 RDKEMW-1441 #7

merged 57 commits into from
Feb 14, 2025

Conversation

shripadbpersonal
Copy link
Contributor

@shripadbpersonal shripadbpersonal commented Feb 14, 2025

Bringing Jan Sprint changes RDKEMW-1441

jfagunde and others added 30 commits February 11, 2025 23:58
Reason for change: Make development of AAMP TSB feature easier[-3753]

Test Procedure: Run AAMP L1 and L2 test 5001

Risks: Low

Change-Id: Ie3cce25533fa01dc12a030cb5509728b8baf7292
Signed-off-by: Jose Fagundez <[email protected]>
Reason for change: Alignment changes. [-55088]
Test Procedure: Build and Verify
Risks: Low
Priority: P2
Change-Id: I087b49dbd275a0d327286c4e423d04be5d494920
Signed-off-by: Paulpandian M <[email protected]>
…ch920

Reason for change: [-3738] Fix reverse trick play on streams with $Time$ in
segment url
Test Procedure: With full stack build on box. Play ch920 for
some duration and then rew -2 and -12 back through that content.
Extract log and check there are no 404 for the iframe fetches.
Alternativly check for 404 on the box when running test via
 tail -f sky-messages.log | grep ,404,
Risks: Low

DEPS_BRANCH=rdk/components/generic/gst-plugins-rdk-aamp:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampabr:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampmetrics:dev_sprint_24_2

Change-Id: I0e41672cb0059e888280ab617b46ea9ef2243cb3
Reason for change: [-3780] update for 2025
Test Procedure: simulator build with install_aamp.sh successful
Risks: Low

Change-Id: I09afd7a0311cc043c1a56baea6b1c92129726f80
Reason for change: [-3754] Add L2 for ad fragment failure usecases. Also
fix the issues identified with the L2 tests
1. Race condition when video goes into rampdown, causing audio
fragments to use the duplicate absolute position
2. When all the remaining video or audio fragments fail in a period
causing a deadlock in discontinuity processing
Test Procedure: L2 test 8022 should pass successfully
Risks: Low

Change-Id: Ie328b8132654ae1d2b856072246035965e75a417
Signed-off-by: Vinish K B <[email protected]>
Reason for change: [-3779] To properly link cJSON on arm64 Mac
Risks: Low
Priority: P0

DEPS_BRANCH=rdk/components/generic/gst-plugins-rdk-aamp:dev_sprint_25_1
DEPS_BRANCH=rdk/components/generic/aampabr:dev_sprint_25_1
DEPS_BRANCH=rdk/components/generic/aampmetrics:dev_sprint_25_1

Change-Id: I1c8f8c889d2e035a80523fce85a2813ad12b6368
Signed-off-by: ryadav983 <[email protected]>
Reason for change: [-3769] It's necessary to use the ISO 639 language code
normalisation functionality wherever language codes are compared. When
the client selects the subtitle track after streaming has started, the
language codes for the currently selected track and the list of
available tracks were not being normalised before comparison with the
now-normalised code passed via the "set preferredTextLanguages" API
(following previous  commit
c9dfdedd78502a230f4e83b5c573208003e5c69d). This additional delivery for
 fixes that.
Note that this is only potentially an issue if the client has set the
languageCodePreference AAMP config to something non-zero (the default
value is 0=ISO639_NO_LANGCODE_PREFERENCE, which turns normalisation into
a no-op).
Test Procedure: L2 5010, and L1 tests should pass.
Risks: Low

Change-Id: Ia5a278c65f94e153046d5884b5e18fbb4c82b211
Signed-off-by: Ian Henderson <[email protected]>
Reason for change:[-3193] patch for SegmentList handling
Test Procedure: play incompatible test stream)
Risks: Low

Change-Id: I4df4061a45efe4853d9745f3ac5d4c46195c84e5
Reason for change: [-16462] Audio fragments are reattempted if they fail to
download and a manifest update follows. This increases the total
duration of audio injected causing deadlock at period transition.
Minor code cleanup
Test Procedure: Drop audio fragments and watch out for stutter or
other video artifacts
Risks: Low

Change-Id: I93a4bd9f2311b737741e515fb3506c1201a98026
Signed-off-by: Vinish K B <[email protected]>
(cherry picked from commit 69cd5be6e761532afc4b310af6d26ee2d182d123)
Reason for change: [-3754] Race condition between audio and video
fragment downloads, which resets the mCheckForRampdown, causing
video to skip the fragment before reaching the bottom on ABR ladder
mCheckForRampdown should be a MediaTrack class member instead of
being shared between all the tracks
Fixed bug in FragmentfailureRampdown() when called at the lowest profile
Test Procedure: L2 test 8022 should pass and no regressions in
linear/VOD playback
Risks: Low

Change-Id: Iac11a8e46ac9c32f5878ffcb379245348dfc454d
Signed-off-by: Vinish K B <[email protected]>
Reason for change: [-16462] Audio fragments are reattempted if the first
attempt fails and a manifest refresh follows. This increases the total
duration of audio injected causing deadlock at period transition.
Test Procedure: Drop audio fragments and watch out for stutter or
other video artifacts
Risks: Low

Change-Id: I9c36cc206dd3f943e456d080128f8e05acbe6ed1
Signed-off-by: Vinish K B <[email protected]>
Reason for change: [-3754] Fix L2 2000 tests
Test Procedure: Make sure L2 2000 pass successfully
Risks: None

Change-Id: I92fd02c595f96a0e3ffd236429eb16046ede1b39
Signed-off-by: Vinish K B <[email protected]>
… local file://

Reason for change:[-3778] test code to understand RCA
Test Procedure: refer ticket
Risks: Low

Change-Id: Ic804f964d24b7d71429437a497875e8db6259647
…tomatically installed

Reason for change: Code cleanup, pipreqs not required after hardcoded requirements.txt
Risks: Low
Priority: P1

DEPS_BRANCH=rdk/components/generic/gst-plugins-rdk-aamp:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampabr:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampmetrics:dev_sprint_24_2

Change-Id: Ia4da8037ac85e43d07e2eb204c84a08887ba4595
Signed-off-by: ryadav983 <[email protected]>
… switch

Reason for change: [-3772] Audio issues when doing seamless audio switch

Test Procedure: Refer jira ticket
Priority: P1

DEPS_BRANCH=rdk/components/generic/gst-plugins-rdk-aamp:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampabr:dev_sprint_24_2
DEPS_BRANCH=rdk/components/generic/aampmetrics:dev_sprint_24_2

Change-Id: I8b1b4c6e3ec05b9b7174387cb46b4c76f4e51e1b
Signed-off-by: mahavarshnielango <[email protected]>
Reason for change: [-3781] tech debt
Test Procedure: run l1/l2 tests and do basic regression
Risks: Low

Change-Id: I8d33d7dad66f5fe3cffe1de2d2fbf1417b902afa
Reason for change: [-3782] spelling fixes
Test Procedure: ensure no breakage to l2 tests (which matches log strings)
Risks: Low
Change-Id: I19ce12ae296dd59fa4fa5719d11268e77332cb5a
… enabled.

Reason for change:[-3515]

Ensure that the subFormat is  set to FORMAT_INVALID(0) if ptsrestamp is enabled for inband cc

Test Procedure: Test case updated in the ticket
Risks: low
Change-Id: I9cae069ebffd32d43fa6dbf2fb1424b22b93846e
Signed-off-by: [email protected]
…sentation

Reason for change:[-3790]

Enhanced GetCurrentMimeType() to read mimeType from representation.

Test Procedure: Test case updated in the ticket
Risks: low
Change-Id: Idd63b2da7260a01abcf95e688ef76ee73da3fc7e
Signed-off-by: [email protected]
Reason for change:[-3792] Remove unused HybridABRManager function
IsLowestProfile(). Modify L2 test 2036 to handle initfragment retry
attempt and subsequent playback related logs. Refactor AAMP buffer
based ABR rampdown to be more proactive
Test Procedure: L2 tests 80xx, 2036 should pass.
Risks: Medium

Change-Id: Ibf55b932153980905516b2c0470cc6eeb134e4da
Signed-off-by: Vinish K B <[email protected]>
Reason for change: [-3791]
Spelling correction
Test Procedure: Test case updated in the ticket
Risks: low
Change-Id: I8eedf5d70de1a8576161126bb928c188a408105c
Signed-off-by: [email protected]
Reason for change: [-67173]  hack to allow to compile  with old mispelled fieldname
Test Procedure: build successful
Risks: Low

Change-Id: I5f45d9a99085c099edb99f2fe36ee4285ac7b58e
Reason for change:[-3793] Update the Sprint version
Test Procedure:Do IP Tune and confirm the version number in IP_AAMP_TUNETIME
Risks:Low

Change-Id: If7a3944d4fe22298c47a708525fd11b10db51183
Signed-off-by: Vinish K B <[email protected]>
Reason for change:[-3796] avoid runtime failures when transcoding test manifest
Test Procedure: use inventory command from gst test harness (see ticket)
Risks: Low

Change-Id: Ifd43486bbc2ffc7f8f3cd5cad8ed24f43bb44a45
…vents

Reason for change: [-67183] avoid breaking backwards compatibilty with existing apps
Test Procedure:
Risks: Low - already broken in sprint!

Change-Id: I4b3b08b4151b436dcb28e1a676df094cb026b11a
Reason for change: Adding a new AampTrackWorker class for scheduling downloader jobs
in parallel threads without creating threads multiple times
Risks: Low
Test Procedure: Test with all AAMP playbacks
Priority: P1

Change-Id: I40729e6f12fe9173d137b4f66f16a157dc758d1a
Signed-off-by: Nandakishor Udiyannur<[email protected]>
Reason for change: Separate trickplayMode flag from use of iframe track

Changes:
* Add StreamAbstractionAAMP_MPD::UseIframeTrack() method
* Use the new method, instead of trickplayMode flag, to select the
  iframe track

Test Procedure: Check that there are no regressions when using DASH or
                HLS trickmodes.

Risks: Low

Change-Id: Iedf77a30b17ad431b83aa54e43f6cfa509c3e641
Signed-off-by: Jose Fagundez <[email protected]>
…s by line

Reason for change: l2 test "expect" statement can match across multiple
log lines without consideration of EOL. This causes confusion when
writing tests and can result in unreliable tests. More detail in jira
Update tests where "expect" previously spanned multiple log lines.

Test Procedure: Confirm no additional test failures in jenkins

Risks: Low

Priority: P3

Change-Id: If76644e44f582fd7dcc9ebffbfefef8852c1b2de
Reason for change: Fixing  a race condition and another crash.
Risks: Low
Test Procedure: Test with DASH playback
Priority: P1

Change-Id: I25b3a4641828e716b821e6d76d3e00edd64c15d9
Signed-off-by: Nandakishor Udiyannur<[email protected]>
Reason for change: fix rate correction logic availability based on
SOC and app.
Test Procedure: updated in ticket
Risks: Low

Change-Id: I004d54b9737cf4efd92ddf720b15651e835ec477
Signed-off-by: Gnanesha <[email protected]>
pstroffolino and others added 24 commits February 12, 2025 16:35
Reason for change: avoid crash while attempting to play malformed manifest
Test Procedure: see ticket
Risks: Low

Change-Id: Ia40f59a113647e9069a1b456de5f954f7ed3f7d2
Reason for change: downgrade various WARN and ERROR logs
Test Procedure: all L1/L2 tests still pass
Risks: Low

Change-Id: I1218272daf2e392fa59e5acaa1112c4f78c3fb54
…nalysis)

Reason for change: avoid potential null pointer access
Test Procedure: l1/l2 tests pass and no xcode analysis warnings
Risks: Low

Change-Id: I7411d30417ebc61c70a55f9793c812b01d86d1d3
Reason for change: test code can/should live in l1tests, not core aamp
Test Procedure: all l1 tests stil pass
Risks: None

Change-Id: Ia21a2e82a09d534ec1845ce52019c6bbf4abc4f2
…n all platforms"

This reverts commit ef3ec209140db2966270cbb401a5bdcefc8a9235.

Reason for revert: To fix position jumping around in trick modes (rdkaamp-3804)

Change-Id: Idd20fcfdae2abb8a5c92fc3a153c1152da1b80da
Reason for change: AV playback with Rialto is failing due to setting subtitle track in AAMP for Rialto

Test Procedure :  confirm the AV playback works fine
Priority : P0
Risks: Low

Change-Id: I04122703997c7463fe402f7ea53fcb4f591d9b75
Signed-off-by: haripriya_molakalapalli <[email protected]>
Reason for change: Added L2 scenario for Ad manifest failure scenario.
Also handled the case if the current ad in the period is failed check
for the second ad is valid, if that is valid then need to place that one
Risks: Low
Test Procedure: L2 case should pass successfully
Priority: P1

Change-Id: Icfaae24406b642bd590ee90387f52849b16d9287
Signed-off-by: lashminthajayanathan <[email protected]>
Reason for change: follow-up corrections
Test Procedure: no regressions in tests
Risks: Low

Change-Id: Ieafebd80d62bcdc57e2cd9164faf291a475389e2

Change-Id: I9dbc00c72bf7de7629f768d35ccfd4d3264ad32a
Reason for change: remove references to
Test Procedure: no impact to IP Video playback
Risks: Low

Change-Id: Ib7f43e4f1fdee0101e95b7c838248accab772634
Reason for change: Multiple versions of AAMPAbrConfig being used in fog.
So default constructed values were used and not correct config values.
Prior to RDKAAMP-3607 it was using a global instance.
Re-introduce a global config.

Risks: Low
Test Procedure: As detailed in the ticket.
Priority: P1

Change-Id: Ibae79da0fd2a7a29ab1c0bf6f34062e175dd3dd1
Signed-off-by: [email protected]
Reason for change: device manager DeInitialize api wrongly changed
Test Procedure: no build failure
Risks: Low

Change-Id: Iaec59f9d59955f0d51653b9d799f834670dbd920
Reason for change: remove the absolutechangeline check for Start Time
to calculate see_pos_seconds so that position is updated properly

Test Procedure :
and no retune should occure around discontinuity
Priority : P1
Risks: Low

Change-Id: Iea3e378d5aca417157a799df46beb31d8b6062b1
Signed-off-by: Gnanesha <[email protected]>
(c.herry picked from commit c30d5d2ee933a9511ab6ee0c64e44876eb715e4d)
Reason for change: Follow-up fragment download failures
after a fragment failure are not accounted in the
skip-fragment calculation when FOG changes the ABR.
The bitrate should only be updated if the fragment
download succeeded. For a failed fragment, even if the
bitrate changes, there is no need to update it
Test Procedure: Throttle the bandwidth to 2Mbps
to simulate the av sync issue
Risks: Low

Change-Id: Id5fb2e64da31c21c930586998c2042f62d470661
Signed-off-by: Gnanesha <[email protected]>
(cherry picked from commit 3241a51d80ddb0153ea8eca343063f3938099201)
Reason for change: Video freeze was seen to put subtitles ahead of AV.
We need to more agressively sync them up. This is an interim approach
until we have a PTS progress monitor that could trigger the variable
update rate as needed.

Test Procedure: Check subtitles stay in sync when we introduce 404 errors
or create underflow and video freezes in other ways.
Risks: Low
Priority: P1

Change-Id: Idad1bbb38867c33d0db234b35799c69d03827f74
Signed-off-by: [email protected]
(cherry picked from commit 554df293a439c6a256a4be2146901f81fb438b59)
(cherry picked from commit 725aef81973fde21b00e192a6f492adc723c389e)
This reverts commit 8e10f7c905259693b5990b335cb4739827953e74.

Reason for revert: Has to be edited.

Change-Id: Iab3544fcf029cebcf7d21f61f77d19801dc4e989
Reason for change: Video freeze was seen to put subtitles ahead of AV.
We need to more agressively sync them up. This is an interim approach
until we have a PTS progress monitor that could trigger the variable
update rate as needed.

Test Procedure: Check subtitles stay in sync when we introduce 404 errors
or create underflow and video freezes in other ways.
Risks: Low
Priority: P1

Change-Id: Iadd1aaa48867c33d0db234b35799c69d03827f74
Signed-off-by: [email protected]
Reason for change: AAMP uses three playbins for each stream (video sink,audio sink and with subtitle sink). It's problematic for rialto sinks .
Test Procedure:
Priority: P1
Risks: Low

Change-Id: Ie8dca9a5b6519b19f32bd72f04632be936ce2890
Signed-off-by: haripriya_molakalapalli <[email protected]>
…application

Reason for change:

Since new devices support MS12V2, the flag is set to true by default.

Test Procedure: Test case updated in the ticket
Risks: low
Change-Id: Ieae6c0a30739ee3cd7651cbd4661c278caa92765
Signed-off-by: [email protected]
(cherry picked from commit 89e903fc09df93cd70cabb67358b011331c5b810)
Reason for change: In rewind we are getting key==end for first ad.
We test for <end only. Without this change we play back through base
period ads only.

Risks: Low
Test Procedure: As detailed in the ticket.
Priority: P1

Change-Id: Id7a08d678a7024ad67972ccaf1232a5cbb77c634
Signed-off-by: [email protected]
(cherry picked from commit d9243d832b90eea791e7194bd15a992e8d3ffd4c)
Reason for change: At the end of CDAI ad, there was back-to-back
tiny source periods seen. getValidPeriodIdx checks for empty period
in the second loop which resulted in picking second tiny period which
was skipped by SelectSourceOrAdPeriod(). This cause a PTSOffset jump
and subsequent fragments were restamped wrongly
Test Procedure: Play CDAI with AV Monitor support enabled and no
issues should be observed
Risks: Low

Change-Id: Ic7e3b17e7940b66b46e1ae27cb24816072004c00
Signed-off-by: Vinish K B <[email protected]>
(cherry picked from commit 8739d45a10d0f2633b4a7d2b4bbf76397fc6e478)
Reason for change:
Test Procedure:
Priority: P2
Risks:Low
Signed-off-by: shripad bankar <[email protected]>
RDKEMW-1441 : Jan sprint code merge
jan Sprint merge RDKEMW-1441
@shripadbpersonal shripadbpersonal requested review from a team as code owners February 14, 2025 20:24
@shripadbpersonal shripadbpersonal changed the title Release/2.1.0 Release/2.1.0 RDKEMW-1441 Feb 14, 2025
@rdkcmf-jenkins
Copy link

b'## Blackduck scan failure details

Summary: 2 violations, 0 files pending approval, 0 files pending identification.

  • Protex Server Path: /home/blackduck/github/aamp/7/rdk/components/generic/aamp

  • Commit: 61b02bb

Report detail: gist'

@shripadbpersonal
Copy link
Contributor Author

bringing changes from develop to main, blackduck was waved off in #3 hence overriding blackduck here to merge to main,

@shripadbpersonal shripadbpersonal merged commit a01dde5 into main Feb 14, 2025
3 of 7 checks passed
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.