From d26fd583ea6b2f49d58c22edbf659ca2e2f813a2 Mon Sep 17 00:00:00 2001 From: dancho Date: Tue, 22 Apr 2025 02:09:56 -0700 Subject: [PATCH] More comprehensive EventLogger in CompositionPlayer * Add an EventLogger to the top-level CompositionPlayer * Label the sequence player EventLoggers differently PiperOrigin-RevId: 750104688 --- .../androidx/media3/transformer/CompositionPlayer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/CompositionPlayer.java b/libraries/transformer/src/main/java/androidx/media3/transformer/CompositionPlayer.java index 95bc5918df..d0385e2c9c 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/CompositionPlayer.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/CompositionPlayer.java @@ -59,6 +59,8 @@ import androidx.media3.effect.TimestampAdjustment; import androidx.media3.exoplayer.ExoPlaybackException; import androidx.media3.exoplayer.ExoPlayer; import androidx.media3.exoplayer.RendererCapabilities; +import androidx.media3.exoplayer.analytics.AnalyticsCollector; +import androidx.media3.exoplayer.analytics.DefaultAnalyticsCollector; import androidx.media3.exoplayer.audio.AudioSink; import androidx.media3.exoplayer.audio.DefaultAudioSink; import androidx.media3.exoplayer.image.ImageDecoder; @@ -286,6 +288,10 @@ public final class CompositionPlayer extends SimpleBasePlayer .build()); } CompositionPlayer compositionPlayer = new CompositionPlayer(this); + AnalyticsCollector analyticsCollector = new DefaultAnalyticsCollector(clock); + analyticsCollector.setPlayer(compositionPlayer, looper); + analyticsCollector.addListener(new EventLogger(TAG)); + compositionPlayer.addListener(analyticsCollector); built = true; return compositionPlayer; } @@ -817,7 +823,7 @@ public final class CompositionPlayer extends SimpleBasePlayer ExoPlayer player = playerBuilder.build(); player.addListener(new PlayerListener(i)); - player.addAnalyticsListener(new EventLogger()); + player.addAnalyticsListener(new EventLogger(TAG + "-" + i)); player.setPauseAtEndOfMediaItems(true); if (i == 0) {