Skip to content

Revisit media item tracker#717

Merged
StaehliJ merged 34 commits into
mainfrom
revisit-media-item-tracker
Sep 27, 2024
Merged

Revisit media item tracker#717
StaehliJ merged 34 commits into
mainfrom
revisit-media-item-tracker

Conversation

@StaehliJ
Copy link
Copy Markdown
Contributor

@StaehliJ StaehliJ commented Sep 23, 2024

Pull request

Description

The goal of this PR is to split and remove PillarboxData into 2 custom tracks and revisit MediaItemTracker.

  1. A track for all tracker data.
  2. A track for blocked time range.

The MediaItemTracker have been revisited with new behaviors. The stop reason and the position are no more send and start and stop are called when current item change only.

Changes made

  • MediaItemTrackerData is stored as an ExoPlayer Track of type TRACK_TYPE_PILLARBOX_TRACKERS.
  • BlockedTimeIntervals are stored as an ExoPlayer Track.of type TRACK_TYPE_PILLARBOX_BLOCKED.
  • Add function to retrieve MediaItemTrackerData getMediaItemTrackerDataOrNull.
  • Add function to retrieve BlockedTimeRange Tracks.getBlockedTimeRangeOrNull.
  • Add MutableMediaItemTrackerData to setup MediaItemTracker data and MediaItemTracker factories.
  • Remove MediaItemTrackerProvider from PillarboxExoPlayer, Tracker factory are store in MediaItemTrackerData.

Analytics changes

Comscore tracker doesn't create a new session when the same item is repeated or reach end and then seek back. It's end only when the player is released or when the player start the next or previous item.

Checklist

  • Your branch has been rebased onto the main branch.
  • APIs have been properly documented (if relevant).
  • The documentation has been updated (if relevant).
  • New unit tests have been written (if relevant).
  • The demo has been updated (if relevant).
  • All pull request status checks pass.

@StaehliJ StaehliJ linked an issue Sep 24, 2024 that may be closed by this pull request
1 task
@StaehliJ StaehliJ marked this pull request as ready for review September 24, 2024 07:08
@StaehliJ StaehliJ requested a review from MGaetan89 September 24, 2024 07:09
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Sep 24, 2024

Code Coverage

Overall Project 49.15% -0.15% 🟢
Files changed 95.06% 🟢

Module Coverage
:pillarbox-analytics 88.18% -1.41% 🟢
:pillarbox-core-business 79.91% -0.33% 🟢
:pillarbox-player 58.79% -0.05% 🟢
Files
Module File Coverage
:pillarbox-analytics SRGAnalytics.kt 49.74% -9.23% 🟢
CommandersAct.kt 0% -50% 🟢
ComScore.kt 0% 🟢
:pillarbox-core-business SRGEventLoggerTracker.kt 100% 🟢
CommandersActTracker.kt 97.92% 🟢
CommandersActStreaming.kt 96.01% -0.44% 🟢
ComScoreTracker.kt 86.91% 🟢
SRGAssetLoader.kt 85.9% -2.63% 🟢
DefaultPillarbox.kt 0% 🟢
:pillarbox-player PillarboxMediaPeriod.kt 100% 🟢
MediaItemTrackerData.kt 100% 🟢
BlockedTimeRangeTracker.kt 100% 🟢
Asset.kt 100% 🟢
Tracks.kt 99.21% -0.79% 🟢
AnalyticsMediaItemTracker.kt 94.81% 🟢
PillarboxMediaSource.kt 87.35% 🟢
UrlAssetLoader.kt 80.65% 🟢
PillarboxExoPlayer.kt 80.6% -0.64% 🟢

Copy link
Copy Markdown
Contributor

@MGaetan89 MGaetan89 left a comment

Choose a reason for hiding this comment

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

One small improvement to a comment, plus the last open comment in PillarboxMediaPeriodTest, then all good 👍🏻

@StaehliJ StaehliJ enabled auto-merge September 27, 2024 12:06
@StaehliJ StaehliJ added this pull request to the merge queue Sep 27, 2024
Merged via the queue into main with commit 1dc6530 Sep 27, 2024
@StaehliJ StaehliJ deleted the revisit-media-item-tracker branch September 27, 2024 12:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

Revisit MediaItemTracker

3 participants