From 9198dd6f5a740ec3dff3fe194a9df0e583943e5d Mon Sep 17 00:00:00 2001 From: olly Date: Wed, 13 Jan 2021 17:00:42 +0000 Subject: [PATCH] Update AudioListener to reflect new audio session ID logic PiperOrigin-RevId: 351597144 --- RELEASENOTES.md | 5 +++++ .../com/google/android/exoplayer2/audio/AudioListener.java | 6 +++--- .../java/com/google/android/exoplayer2/SimpleExoPlayer.java | 2 +- .../android/exoplayer2/analytics/AnalyticsCollector.java | 2 +- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 8e13b73bd8..c26ad50998 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -136,6 +136,11 @@ which can be immediately queried by calling `SimpleExoPlayer.getAudioSessionId`. The audio session ID will only change if application code calls `SimpleExoPlayer.setAudioSessionId`. + * `AudioListener.onAudioSessionId` is replaced with + `AudioListener.onAudioSessionIdChanged`. Note that + `onAudioSessionIdChanged` is called in fewer cases than + `onAudioSessionId` was called, due to the improved handling of audio + session IDs as described above. * Text: * Gracefully handle null-terminated subtitle content in Matroska containers. diff --git a/library/common/src/main/java/com/google/android/exoplayer2/audio/AudioListener.java b/library/common/src/main/java/com/google/android/exoplayer2/audio/AudioListener.java index f208f602e1..1abe6b2f3c 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/audio/AudioListener.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/audio/AudioListener.java @@ -19,11 +19,11 @@ package com.google.android.exoplayer2.audio; public interface AudioListener { /** - * Called when the audio session is set. + * Called when the audio session ID changes. * - * @param audioSessionId The audio session id. + * @param audioSessionId The audio session ID. */ - default void onAudioSessionId(int audioSessionId) {} + default void onAudioSessionIdChanged(int audioSessionId) {} /** * Called when the audio attributes change. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java index fefb1fb566..1971979c52 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java @@ -983,7 +983,7 @@ public class SimpleExoPlayer extends BasePlayer sendRendererMessage(C.TRACK_TYPE_AUDIO, Renderer.MSG_SET_AUDIO_SESSION_ID, audioSessionId); sendRendererMessage(C.TRACK_TYPE_VIDEO, Renderer.MSG_SET_AUDIO_SESSION_ID, audioSessionId); for (AudioListener audioListener : audioListeners) { - audioListener.onAudioSessionId(audioSessionId); + audioListener.onAudioSessionIdChanged(audioSessionId); } } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java index f09e5db812..a2146f03b8 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java @@ -300,7 +300,7 @@ public class AnalyticsCollector // AudioListener implementation. @Override - public final void onAudioSessionId(int audioSessionId) { + public final void onAudioSessionIdChanged(int audioSessionId) { EventTime eventTime = generateReadingMediaPeriodEventTime(); sendEvent( eventTime,