diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/FrameProcessorChain.java b/libraries/transformer/src/main/java/androidx/media3/transformer/FrameProcessorChain.java index 7704ba2ce2..3e4d895933 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/FrameProcessorChain.java +++ b/libraries/transformer/src/main/java/androidx/media3/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