mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Move AnalyticsCollector setup from SimpleExoPlayer to ExoPlayerImpl
PiperOrigin-RevId: 320172040
This commit is contained in:
parent
01249bf1cd
commit
9b4918656f
2 changed files with 9 additions and 4 deletions
|
|
@ -75,6 +75,8 @@ import java.util.concurrent.TimeoutException;
|
||||||
private final List<MediaSourceHolderSnapshot> mediaSourceHolderSnapshots;
|
private final List<MediaSourceHolderSnapshot> mediaSourceHolderSnapshots;
|
||||||
private final boolean useLazyPreparation;
|
private final boolean useLazyPreparation;
|
||||||
private final MediaSourceFactory mediaSourceFactory;
|
private final MediaSourceFactory mediaSourceFactory;
|
||||||
|
@Nullable private final AnalyticsCollector analyticsCollector;
|
||||||
|
private final BandwidthMeter bandwidthMeter;
|
||||||
|
|
||||||
@RepeatMode private int repeatMode;
|
@RepeatMode private int repeatMode;
|
||||||
private boolean shuffleModeEnabled;
|
private boolean shuffleModeEnabled;
|
||||||
|
|
@ -135,6 +137,8 @@ import java.util.concurrent.TimeoutException;
|
||||||
this.renderers = checkNotNull(renderers);
|
this.renderers = checkNotNull(renderers);
|
||||||
this.trackSelector = checkNotNull(trackSelector);
|
this.trackSelector = checkNotNull(trackSelector);
|
||||||
this.mediaSourceFactory = mediaSourceFactory;
|
this.mediaSourceFactory = mediaSourceFactory;
|
||||||
|
this.bandwidthMeter = bandwidthMeter;
|
||||||
|
this.analyticsCollector = analyticsCollector;
|
||||||
this.useLazyPreparation = useLazyPreparation;
|
this.useLazyPreparation = useLazyPreparation;
|
||||||
this.seekParameters = seekParameters;
|
this.seekParameters = seekParameters;
|
||||||
this.pauseAtEndOfMediaItems = pauseAtEndOfMediaItems;
|
this.pauseAtEndOfMediaItems = pauseAtEndOfMediaItems;
|
||||||
|
|
@ -161,6 +165,8 @@ import java.util.concurrent.TimeoutException;
|
||||||
pendingListenerNotifications = new ArrayDeque<>();
|
pendingListenerNotifications = new ArrayDeque<>();
|
||||||
if (analyticsCollector != null) {
|
if (analyticsCollector != null) {
|
||||||
analyticsCollector.setPlayer(this);
|
analyticsCollector.setPlayer(this);
|
||||||
|
addListener(analyticsCollector);
|
||||||
|
bandwidthMeter.addEventListener(applicationHandler, analyticsCollector);
|
||||||
}
|
}
|
||||||
internalPlayer =
|
internalPlayer =
|
||||||
new ExoPlayerImplInternal(
|
new ExoPlayerImplInternal(
|
||||||
|
|
@ -712,6 +718,9 @@ import java.util.concurrent.TimeoutException;
|
||||||
new RuntimeException(new TimeoutException("Player release timed out.")))));
|
new RuntimeException(new TimeoutException("Player release timed out.")))));
|
||||||
}
|
}
|
||||||
applicationHandler.removeCallbacksAndMessages(null);
|
applicationHandler.removeCallbacksAndMessages(null);
|
||||||
|
if (analyticsCollector != null) {
|
||||||
|
bandwidthMeter.removeEventListener(analyticsCollector);
|
||||||
|
}
|
||||||
playbackInfo =
|
playbackInfo =
|
||||||
getResetPlaybackInfo(
|
getResetPlaybackInfo(
|
||||||
/* clearPlaylist= */ false,
|
/* clearPlaylist= */ false,
|
||||||
|
|
|
||||||
|
|
@ -601,15 +601,12 @@ public class SimpleExoPlayer extends BasePlayer
|
||||||
builder.pauseAtEndOfMediaItems,
|
builder.pauseAtEndOfMediaItems,
|
||||||
builder.clock,
|
builder.clock,
|
||||||
builder.looper);
|
builder.looper);
|
||||||
analyticsCollector.setPlayer(player);
|
|
||||||
player.addListener(analyticsCollector);
|
|
||||||
player.addListener(componentListener);
|
player.addListener(componentListener);
|
||||||
videoDebugListeners.add(analyticsCollector);
|
videoDebugListeners.add(analyticsCollector);
|
||||||
videoListeners.add(analyticsCollector);
|
videoListeners.add(analyticsCollector);
|
||||||
audioDebugListeners.add(analyticsCollector);
|
audioDebugListeners.add(analyticsCollector);
|
||||||
audioListeners.add(analyticsCollector);
|
audioListeners.add(analyticsCollector);
|
||||||
addMetadataOutput(analyticsCollector);
|
addMetadataOutput(analyticsCollector);
|
||||||
bandwidthMeter.addEventListener(eventHandler, analyticsCollector);
|
|
||||||
|
|
||||||
audioBecomingNoisyManager =
|
audioBecomingNoisyManager =
|
||||||
new AudioBecomingNoisyManager(builder.context, eventHandler, componentListener);
|
new AudioBecomingNoisyManager(builder.context, eventHandler, componentListener);
|
||||||
|
|
@ -1699,7 +1696,6 @@ public class SimpleExoPlayer extends BasePlayer
|
||||||
Assertions.checkNotNull(priorityTaskManager).remove(C.PRIORITY_PLAYBACK);
|
Assertions.checkNotNull(priorityTaskManager).remove(C.PRIORITY_PLAYBACK);
|
||||||
isPriorityTaskManagerRegistered = false;
|
isPriorityTaskManagerRegistered = false;
|
||||||
}
|
}
|
||||||
bandwidthMeter.removeEventListener(analyticsCollector);
|
|
||||||
currentCues = Collections.emptyList();
|
currentCues = Collections.emptyList();
|
||||||
playerReleased = true;
|
playerReleased = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue