diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameProcessorChain.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameProcessorChain.java index 304dcb4c34..0fb1389504 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameProcessorChain.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameProcessorChain.java @@ -602,10 +602,13 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @Override public synchronized void surfaceChanged( SurfaceHolder holder, int format, int width, int height) { - surface = holder.getSurface(); - eglSurface = null; this.width = width; this.height = height; + Surface newSurface = holder.getSurface(); + if (surface == null || !surface.equals(newSurface)) { + surface = newSurface; + eglSurface = null; + } } @Override