diff --git a/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoFrameProcessor.java b/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoFrameProcessor.java index 9b88154a77..aca51b488d 100644 --- a/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoFrameProcessor.java +++ b/libraries/effect/src/main/java/androidx/media3/effect/DefaultVideoFrameProcessor.java @@ -327,7 +327,7 @@ public final class DefaultVideoFrameProcessor implements VideoFrameProcessor { return new DefaultVideoFrameProcessor.Factory( sdrWorkingColorSpace, /* repeatLastRegisteredFrame= */ !requireRegisteringAllInputFrames, - glObjectsProvider == null ? new DefaultGlObjectsProvider() : glObjectsProvider, + glObjectsProvider, executorService, textureOutputListener, textureOutputCapacity, @@ -338,7 +338,7 @@ public final class DefaultVideoFrameProcessor implements VideoFrameProcessor { private final @WorkingColorSpace int sdrWorkingColorSpace; private final boolean repeatLastRegisteredFrame; - private final GlObjectsProvider glObjectsProvider; + @Nullable private final GlObjectsProvider glObjectsProvider; @Nullable private final ExecutorService executorService; @Nullable private final GlTextureProducer.Listener textureOutputListener; private final int textureOutputCapacity; @@ -348,7 +348,7 @@ public final class DefaultVideoFrameProcessor implements VideoFrameProcessor { private Factory( @WorkingColorSpace int sdrWorkingColorSpace, boolean repeatLastRegisteredFrame, - GlObjectsProvider glObjectsProvider, + @Nullable GlObjectsProvider glObjectsProvider, @Nullable ExecutorService executorService, @Nullable GlTextureProducer.Listener textureOutputListener, int textureOutputCapacity, @@ -411,6 +411,9 @@ public final class DefaultVideoFrameProcessor implements VideoFrameProcessor { new VideoFrameProcessingTaskExecutor( instanceExecutorService, shouldShutdownExecutorService, listener::onError); + GlObjectsProvider glObjectsProvider = + this.glObjectsProvider == null ? new DefaultGlObjectsProvider() : this.glObjectsProvider; + Future defaultVideoFrameProcessorFuture = instanceExecutorService.submit( () ->