#GstEGLImage represents and holds an `EGLImage` handle. A #GstEGLImage can be created from a dmabuf with gst_egl_image_from_dmabuf(), or gst_egl_image_from_dmabuf_direct(), or #GstGLMemoryEGL provides a #GstAllocator to allocate `EGLImage`'s bound to and OpenGL texture. a new #GstEGLImage wrapping @image a #GstGLContext (must be an EGL context) the image to wrap the #GstGLFormat user data called when @user_data is no longer needed the `EGLImage` of @image a #GstEGLImage Checks if the given @context can emulate @format using a limited subset of RGB texture formats. Such @format is then suitable for importing using gst_egl_image_from_dmabuf() even when GL supports the video format as external-only or not at all. #TRUE if @format can be emulated a #GstGLContext (must be an EGL context) a #GstVideoFormat Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed as RGBA data. Shaders later take this "RGBA" data and convert it from its true format (described by in_info) to actual RGBA output. For example, with I420, three EGL images are created, one for each @plane, each EGL image with a single-channel R format. With NV12, two EGL images are created, one with R format, one with RG format etc. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) the DMA-Buf file descriptor the #GstVideoInfo in @dmabuf the plane in @in_info to create and #GstEGLImage for the byte-offset in the data Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in in_info. This is useful if the hardware is capable of performing color space conversions internally. The appropriate DRM format is picked, and the EGL image is created with this DRM format. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfo Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in @in_info. This is useful if the hardware is capable of performing color space conversions internally. The appropriate DRM format is picked, and the EGL image is created with this DRM format. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfo GL texture target this GstEGLImage is intended for Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in @in_info. This is useful if the hardware is capable of performing color space conversions internally. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) number of planes (obtained from a #GstVideoMeta) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfoDmaDrm GL texture target this GstEGLImage is intended for a #GstEGLImage wrapping @gl_mem or %NULL on failure a #GstGLContext (must be an EGL context) a #GstGLMemory additional attributes to add to the `eglCreateImage`() call. Function to be called when the GstEGLImage is destroyed. It should free the associated `EGLImage` if necessary a #GstEGLImage user data passed to gst_egl_image_new_wrapped() the contents of a #GstGLDisplayEGL are private and should only be accessed through the provided API Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY. a new #GstGLDisplayEGL or %NULL Create a new surfaceless #GstGLDisplayEGL using the Mesa3D EGL_PLATFORM_SURFACELESS_MESA extension. a new #GstGLDisplayEGL or %NULL Creates a EGL display connection from a native Display. This function will return the same value for multiple calls with the same @display. a new #GstGLDisplayEGL an existing #GstGLDisplay Attempts to create a new `EGLDisplay` from @display. If @type is %GST_GL_DISPLAY_TYPE_ANY or %GST_GL_DISPLAY_TYPE_EGL_SURFACELESS, then @display must be 0. @type must not be %GST_GL_DISPLAY_TYPE_NONE. A `EGLDisplay` or `EGL_NO_DISPLAY` a #GstGLDisplayType pointer to a display (or 0) the contents of a #GstGLDisplayEGLDevice are private and should only be accessed through the provided API Create a new #GstGLDisplayEGLDevice with an EGLDevice supported device a new #GstGLDisplayEGLDevice or %NULL the index of device to use Creates a new #GstGLDisplayEGLDevice with EGLDeviceEXT . The @device must be created using EGLDevice enumeration. a new #GstGLDisplayEGLDevice an existing EGLDeviceEXT Opaque #GstGLDisplayEGLDeviceClass struct #GstGLMemoryEGL is created or wrapped through gst_gl_base_memory_alloc() with #GstGLVideoAllocationParams. The EGLDisplay @mem is associated with a #GstGLMemoryEGL The EGLImage held by @mem a #GstGLMemoryEGL Initializes the GL Memory allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemoryEGL operation. Opaque #GstGLMemoryEGLAllocator struct The #GstGLMemoryEGLAllocatorClass only contains private data The name of the GL Memory EGL allocator the short string representation of @err an EGL error code Checks if the given @context can emulate @format using a limited subset of RGB texture formats. Such @format is then suitable for importing using gst_egl_image_from_dmabuf() even when GL supports the video format as external-only or not at all. #TRUE if @format can be emulated a #GstGLContext (must be an EGL context) a #GstVideoFormat Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed as RGBA data. Shaders later take this "RGBA" data and convert it from its true format (described by in_info) to actual RGBA output. For example, with I420, three EGL images are created, one for each @plane, each EGL image with a single-channel R format. With NV12, two EGL images are created, one with R format, one with RG format etc. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) the DMA-Buf file descriptor the #GstVideoInfo in @dmabuf the plane in @in_info to create and #GstEGLImage for the byte-offset in the data Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in in_info. This is useful if the hardware is capable of performing color space conversions internally. The appropriate DRM format is picked, and the EGL image is created with this DRM format. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfo Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in @in_info. This is useful if the hardware is capable of performing color space conversions internally. The appropriate DRM format is picked, and the EGL image is created with this DRM format. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfo GL texture target this GstEGLImage is intended for Creates an EGL image that imports the dmabuf FD. The dmabuf data is passed directly as the format described in @in_info. This is useful if the hardware is capable of performing color space conversions internally. Another notable difference to gst_egl_image_from_dmabuf() is that this function creates one EGL image for all planes, not one for a single plane. a #GstEGLImage wrapping @dmabuf or %NULL on failure a #GstGLContext (must be an EGL context) number of planes (obtained from a #GstVideoMeta) Array of DMABuf file descriptors Array of offsets, relative to the DMABuf the #GstVideoInfoDmaDrm GL texture target this GstEGLImage is intended for a #GstEGLImage wrapping @gl_mem or %NULL on failure a #GstGLContext (must be an EGL context) a #GstGLMemory additional attributes to add to the `eglCreateImage`() call. Initializes the GL Memory allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemoryEGL operation. #GstGLDisplayEGL represents a connection to an EGL `EGLDisplay` handle created internally (gst_gl_display_egl_new() or gst_gl_display_egl_new_surfaceless()) or wrapped by the application (gst_gl_display_egl_new_with_egl_display()) #GstGLDisplayEGLDevice represents a `EGLDeviceEXT` handle created internally (gst_gl_display_egl_device_new()) or wrapped by the application (gst_gl_display_egl_device_new_with_egl_device()) whether @mem is a #GstGLMemoryEGL a #GstMemory to test