From fc7b66706f4419898c72cf91f40db47c6c7966b4 Mon Sep 17 00:00:00 2001 From: ibaker Date: Mon, 8 Nov 2021 12:08:04 +0000 Subject: [PATCH] Migrate GL demo from deprecated ExoPlayer.VideoComponent to ExoPlayer #minor-release PiperOrigin-RevId: 408304187 --- .../androidx/media3/demo/gl/MainActivity.java | 5 ++- .../demo/gl/VideoProcessingGLSurfaceView.java | 33 +++++++++---------- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/demos/gl/src/main/java/androidx/media3/demo/gl/MainActivity.java b/demos/gl/src/main/java/androidx/media3/demo/gl/MainActivity.java index b9ffc7e448..e352c6e207 100644 --- a/demos/gl/src/main/java/androidx/media3/demo/gl/MainActivity.java +++ b/demos/gl/src/main/java/androidx/media3/demo/gl/MainActivity.java @@ -179,8 +179,7 @@ public final class MainActivity extends Activity { player.play(); VideoProcessingGLSurfaceView videoProcessingGLSurfaceView = Assertions.checkNotNull(this.videoProcessingGLSurfaceView); - videoProcessingGLSurfaceView.setVideoComponent( - Assertions.checkNotNull(player.getVideoComponent())); + videoProcessingGLSurfaceView.setPlayer(player); Assertions.checkNotNull(playerView).setPlayer(player); player.addAnalyticsListener(new EventLogger(/* trackSelector= */ null)); this.player = player; @@ -188,9 +187,9 @@ public final class MainActivity extends Activity { private void releasePlayer() { Assertions.checkNotNull(playerView).setPlayer(null); + Assertions.checkNotNull(videoProcessingGLSurfaceView).setPlayer(null); if (player != null) { player.release(); - Assertions.checkNotNull(videoProcessingGLSurfaceView).setVideoComponent(null); player = null; } } diff --git a/demos/gl/src/main/java/androidx/media3/demo/gl/VideoProcessingGLSurfaceView.java b/demos/gl/src/main/java/androidx/media3/demo/gl/VideoProcessingGLSurfaceView.java index b1eafe9807..50c07aee24 100644 --- a/demos/gl/src/main/java/androidx/media3/demo/gl/VideoProcessingGLSurfaceView.java +++ b/demos/gl/src/main/java/androidx/media3/demo/gl/VideoProcessingGLSurfaceView.java @@ -73,7 +73,7 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView { @Nullable private SurfaceTexture surfaceTexture; @Nullable private Surface surface; - @Nullable private ExoPlayer.VideoComponent videoComponent; + @Nullable private ExoPlayer player; /** * Creates a new instance. Pass {@code true} for {@code requireSecureContext} if the {@link @@ -147,25 +147,24 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView { } /** - * Attaches or detaches (if {@code newVideoComponent} is {@code null}) this view from the video - * component of the player. + * Attaches or detaches (if {@code player} is {@code null}) this view from the player. * - * @param newVideoComponent The new video component, or {@code null} to detach this view. + * @param player The new player, or {@code null} to detach this view. */ - public void setVideoComponent(@Nullable ExoPlayer.VideoComponent newVideoComponent) { - if (newVideoComponent == videoComponent) { + public void setPlayer(@Nullable ExoPlayer player) { + if (player == this.player) { return; } - if (videoComponent != null) { + if (this.player != null) { if (surface != null) { - videoComponent.clearVideoSurface(surface); + this.player.clearVideoSurface(surface); } - videoComponent.clearVideoFrameMetadataListener(renderer); + this.player.clearVideoFrameMetadataListener(renderer); } - videoComponent = newVideoComponent; - if (videoComponent != null) { - videoComponent.setVideoFrameMetadataListener(renderer); - videoComponent.setVideoSurface(surface); + this.player = player; + if (this.player != null) { + this.player.setVideoFrameMetadataListener(renderer); + this.player.setVideoSurface(surface); } } @@ -176,8 +175,8 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView { mainHandler.post( () -> { if (surface != null) { - if (videoComponent != null) { - videoComponent.setVideoSurface(null); + if (player != null) { + player.setVideoSurface(null); } releaseSurface(surfaceTexture, surface); surfaceTexture = null; @@ -194,8 +193,8 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView { this.surfaceTexture = surfaceTexture; this.surface = new Surface(surfaceTexture); releaseSurface(oldSurfaceTexture, oldSurface); - if (videoComponent != null) { - videoComponent.setVideoSurface(surface); + if (player != null) { + player.setVideoSurface(surface); } }); }