From 337b7f769dbf994cbb62d442e6e55e4b66bb7e8f Mon Sep 17 00:00:00 2001 From: huangdarwin Date: Wed, 4 May 2022 17:20:41 +0100 Subject: [PATCH] GL: Update exoplayer to use bindTexture. Refactoring change only. PiperOrigin-RevId: 446475708 --- .../java/androidx/media3/common/util/GlUtil.java | 2 +- .../exoplayer/video/VideoDecoderGLSurfaceView.java | 12 ++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/libraries/common/src/main/java/androidx/media3/common/util/GlUtil.java b/libraries/common/src/main/java/androidx/media3/common/util/GlUtil.java index 91ce6a9140..b3f55812fb 100644 --- a/libraries/common/src/main/java/androidx/media3/common/util/GlUtil.java +++ b/libraries/common/src/main/java/androidx/media3/common/util/GlUtil.java @@ -463,7 +463,7 @@ public final class GlUtil { * GLES20#GL_TEXTURE_2D} for a two-dimensional texture or {@link * GLES11Ext#GL_TEXTURE_EXTERNAL_OES} for an external texture. */ - /* package */ static void bindTexture(int textureTarget, int texId) { + public static void bindTexture(int textureTarget, int texId) { GLES20.glBindTexture(textureTarget, texId); checkGlError(); GLES20.glTexParameteri(textureTarget, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR); diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/VideoDecoderGLSurfaceView.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/VideoDecoderGLSurfaceView.java index cc3898032f..66e5ad93fb 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/VideoDecoderGLSurfaceView.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/video/VideoDecoderGLSurfaceView.java @@ -300,19 +300,11 @@ public final class VideoDecoderGLSurfaceView extends GLSurfaceView @RequiresNonNull("program") private void setupTextures() { - GLES20.glGenTextures(3, yuvTextures, /* offset= */ 0); + GLES20.glGenTextures(/* n= */ 3, yuvTextures, /* offset= */ 0); for (int i = 0; i < 3; i++) { GLES20.glUniform1i(program.getUniformLocation(TEXTURE_UNIFORMS[i]), i); GLES20.glActiveTexture(GLES20.GL_TEXTURE0 + i); - GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, yuvTextures[i]); - GLES20.glTexParameterf( - GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR); - GLES20.glTexParameterf( - GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR); - GLES20.glTexParameterf( - GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE); - GLES20.glTexParameterf( - GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE); + GlUtil.bindTexture(GLES20.GL_TEXTURE_2D, yuvTextures[i]); } GlUtil.checkGlError(); }