From 7821e7702b97138bd180e78f5ec3515c84cd0908 Mon Sep 17 00:00:00 2001 From: dancho Date: Tue, 3 Dec 2024 04:54:04 -0800 Subject: [PATCH] Frame extractor: explain color accuracy issues This is only a javadoc change, setting expectations. PiperOrigin-RevId: 702295210 --- .../ExperimentalFrameExtractor.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/ExperimentalFrameExtractor.java b/libraries/transformer/src/main/java/androidx/media3/transformer/ExperimentalFrameExtractor.java index a711367401..ba709d4ed1 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/ExperimentalFrameExtractor.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/ExperimentalFrameExtractor.java @@ -40,6 +40,8 @@ import android.opengl.GLES20; import android.opengl.GLES30; import android.os.Handler; import android.os.Looper; +import android.view.SurfaceView; +import android.widget.ImageView; import androidx.annotation.CallSuper; import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; @@ -63,6 +65,7 @@ import androidx.media3.effect.GlEffect; import androidx.media3.effect.GlShaderProgram; import androidx.media3.effect.MatrixTransformation; import androidx.media3.effect.PassthroughShaderProgram; +import androidx.media3.effect.RgbMatrix; import androidx.media3.effect.ScaleAndRotateTransformation; import androidx.media3.exoplayer.DecoderCounters; import androidx.media3.exoplayer.DecoderReuseEvaluation; @@ -96,6 +99,25 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; *

This class is experimental and will be renamed or removed in a future release. * *

Frame extractor instances must be accessed from a single application thread. + * + *

This class may produce incorrect or washed out colors, or images that have too high contrast + * for inputs not covered by testDecodeGlAccuracyRGB + * CTS test. That is: + * + *

*/ @UnstableApi public final class ExperimentalFrameExtractor implements AnalyticsListener {