From a6812156e6ea5ea2dc45d222f402065c0da46b62 Mon Sep 17 00:00:00 2001 From: ibaker Date: Thu, 25 Jan 2024 02:40:55 -0800 Subject: [PATCH] Throw immediately from `ExoPlayer.setVideoEffects()` if dep not found This method works by reflectively loading classes from the `lib-effect` module, in order to avoid a hard dependency on this module for ExoPlayer users that don't want video effect functionality. This change ensures that a failure to load the necessary classes fails immediately, instead of on a later thread inside `MediaCodecVideoRenderer` when the reflection currently happens. Also update the javadoc to make the dependency requirement clear. #minor-release PiperOrigin-RevId: 601387957 --- .../main/java/androidx/media3/exoplayer/ExoPlayer.java | 4 ++++ .../java/androidx/media3/exoplayer/ExoPlayerImpl.java | 8 ++++++++ .../java/androidx/media3/exoplayer/ExoPlayerTest.java | 8 ++++++++ 3 files changed, 20 insertions(+) diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/ExoPlayer.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/ExoPlayer.java index d17820a71f..2982d9f299 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/ExoPlayer.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/ExoPlayer.java @@ -1573,6 +1573,10 @@ public interface ExoPlayer extends Player { *

The following limitations exist for using {@linkplain Effect video effects}: * *