Interface GlObjectsProvider

  • All Known Implementing Classes:
    DefaultGlObjectsProvider

    @Deprecated
    public interface GlObjectsProvider
    Deprecated.
    com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.
    Provider to customize the creation and maintenance of GL objects.
    • Field Detail

      • DEFAULT

        @Deprecated
        static final GlObjectsProvider DEFAULT
        Deprecated.
        Please use DefaultGlObjectsProvider in com.google.android.exoplayer2.effect.
    • Method Detail

      • createEglContext

        @RequiresApi(17)
        EGLContext createEglContext​(EGLDisplay eglDisplay,
                                    @IntRange(from=2L,to=3L)
                                    int openGlVersion,
                                    int[] configAttributes)
                             throws GlUtil.GlException
        Deprecated.
        Creates a new EGLContext for the specified EGLDisplay.
        Parameters:
        eglDisplay - The EGLDisplay to create an EGLContext for.
        openGlVersion - The version of OpenGL ES to configure. Accepts either 2, for OpenGL ES 2.0, or 3, for OpenGL ES 3.0.
        configAttributes - The attributes to configure EGL with.
        Throws:
        GlUtil.GlException - If an error occurs during creation.
      • createEglSurface

        @RequiresApi(17)
        EGLSurface createEglSurface​(EGLDisplay eglDisplay,
                                    Object surface,
                                    @com.google.android.exoplayer2.C.ColorTransfer int colorTransfer,
                                    boolean isEncoderInputSurface)
                             throws GlUtil.GlException
        Deprecated.
        Creates a new EGLSurface wrapping the specified surface.
        Parameters:
        eglDisplay - The EGLDisplay to attach the surface to.
        surface - The surface to wrap; must be a surface, surface texture or surface holder.
        colorTransfer - The color transfer characteristics to which the surface is configured.
        isEncoderInputSurface - Whether the surface is the input surface of an encoder.
        Throws:
        GlUtil.GlException - If an error occurs during creation.
      • createFocusedPlaceholderEglSurface

        @RequiresApi(17)
        EGLSurface createFocusedPlaceholderEglSurface​(EGLContext eglContext,
                                                      EGLDisplay eglDisplay,
                                                      int[] configAttributes)
                                               throws GlUtil.GlException
        Deprecated.
        Creates and focuses a placeholder EGLSurface.
        Parameters:
        eglContext - The EGLContext to make current.
        eglDisplay - The EGLDisplay to attach the surface to.
        configAttributes - The attributes to configure EGL with.
        Returns:
        A placeholder EGLSurface that has been focused to allow rendering to take place, or EGL14.EGL_NO_SURFACE if the current context supports rendering without a surface.
        Throws:
        GlUtil.GlException - If an error occurs during creation.
      • createBuffersForTexture

        GlTextureInfo createBuffersForTexture​(int texId,
                                              int width,
                                              int height)
                                       throws GlUtil.GlException
        Deprecated.
        Returns a GlTextureInfo containing the identifiers of the newly created buffers.
        Parameters:
        texId - The identifier of the texture to attach to the buffers.
        width - The width of the texture in pixels.
        height - The height of the texture in pixels.
        Throws:
        GlUtil.GlException - If an error occurs during creation.