From 40d3e12853cea32aac14cec663b6089c2682cbce Mon Sep 17 00:00:00 2001 From: krocard Date: Wed, 14 Apr 2021 14:32:06 +0100 Subject: [PATCH] Move MetadataComponent from Player to ExoPlayer PiperOrigin-RevId: 368418142 --- .../exoplayer2/ext/cast/CastPlayer.java | 6 ----- .../com/google/android/exoplayer2/Player.java | 24 ------------------ .../google/android/exoplayer2/ExoPlayer.java | 25 +++++++++++++++++++ .../android/exoplayer2/SimpleExoPlayer.java | 2 +- 4 files changed, 26 insertions(+), 31 deletions(-) diff --git a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java index 8410eb21b7..df8accd1b3 100644 --- a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java +++ b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java @@ -286,12 +286,6 @@ public final class CastPlayer extends BasePlayer { return null; } - @Override - @Nullable - public MetadataComponent getMetadataComponent() { - return null; - } - @Override @Nullable public DeviceComponent getDeviceComponent() { diff --git a/library/common/src/main/java/com/google/android/exoplayer2/Player.java b/library/common/src/main/java/com/google/android/exoplayer2/Player.java index 5b8d522ed9..e8f0ddc916 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/Player.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/Player.java @@ -227,24 +227,6 @@ public interface Player { List getCurrentCues(); } - /** The metadata component of a {@link Player}. */ - interface MetadataComponent { - - /** - * Adds a {@link MetadataOutput} to receive metadata. - * - * @param output The output to register. - */ - void addMetadataOutput(MetadataOutput output); - - /** - * Removes a {@link MetadataOutput}. - * - * @param output The output to remove. - */ - void removeMetadataOutput(MetadataOutput output); - } - /** The device component of a {@link Player}. */ interface DeviceComponent { @@ -1173,12 +1155,6 @@ public interface Player { @Nullable TextComponent getTextComponent(); - /** - * Returns the component of this player for metadata output, or null if metadata is not supported. - */ - @Nullable - MetadataComponent getMetadataComponent(); - /** Returns the component of this player for playback device, or null if it's not supported. */ @Nullable DeviceComponent getDeviceComponent(); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayer.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayer.java index a5e6a1efca..32c1fac0c7 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayer.java @@ -28,6 +28,7 @@ import com.google.android.exoplayer2.audio.AudioSink; import com.google.android.exoplayer2.audio.AuxEffectInfo; import com.google.android.exoplayer2.audio.DefaultAudioSink; import com.google.android.exoplayer2.audio.MediaCodecAudioRenderer; +import com.google.android.exoplayer2.metadata.MetadataOutput; import com.google.android.exoplayer2.metadata.MetadataRenderer; import com.google.android.exoplayer2.source.DefaultMediaSourceFactory; import com.google.android.exoplayer2.source.MediaSource; @@ -218,6 +219,24 @@ public interface ExoPlayer extends Player { boolean getSkipSilenceEnabled(); } + /** The metadata component of an {@link ExoPlayer}. */ + interface MetadataComponent { + + /** + * Adds a {@link MetadataOutput} to receive metadata. + * + * @param output The output to register. + */ + void addMetadataOutput(MetadataOutput output); + + /** + * Removes a {@link MetadataOutput}. + * + * @param output The output to remove. + */ + void removeMetadataOutput(MetadataOutput output); + } + /** * The default timeout for calls to {@link #release} and {@link #setForegroundMode}, in * milliseconds. @@ -561,6 +580,12 @@ public interface ExoPlayer extends Player { @Nullable AudioComponent getAudioComponent(); + /** + * Returns the component of this player for metadata output, or null if metadata is not supported. + */ + @Nullable + MetadataComponent getMetadataComponent(); + /** * Adds a listener to receive audio offload events. * 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 20e0ab0c1a..24f5adb6ea 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 @@ -81,7 +81,7 @@ public class SimpleExoPlayer extends BasePlayer ExoPlayer.AudioComponent, Player.VideoComponent, Player.TextComponent, - Player.MetadataComponent, + ExoPlayer.MetadataComponent, Player.DeviceComponent { /** The default timeout for detaching a surface from the player, in milliseconds. */