## GstGLRenderBuffer

GstGLRenderBuffer — memory subclass for GL renderbuffer objects

## Functions

GstGLRenderbufferAllocationParams * | gst_gl_renderbuffer_allocation_params_new ()
GstGLRenderbufferAllocationParams * | gst_gl_renderbuffer_allocation_params_new_wrapped ()
gint | gst_gl_renderbuffer_get_height ()
guint | gst_gl_renderbuffer_get_id ()
GstGLFormat | gst_gl_renderbuffer_get_format ()
gint | gst_gl_renderbuffer_get_width ()
void | gst_gl_renderbuffer_init_once ()
gboolean | gst_is_gl_renderbuffer ()

## Types and Values

| GstGLRenderbufferAllocator
| GstGLRenderbufferAllocatorClass
#define | GST_GL_RENDERBUFFER_ALLOCATOR_NAME

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstAllocator
                    ╰── GstGLBaseMemoryAllocator
                        ╰── GstGLRenderbufferAllocator

## Includes

    #include <gst/codecparsers/gstmpeg4parser.h>

## Description

GstGLRenderbuffer is a GstGLBaseMemory subclass providing support for OpenGL renderbuffers.

GstGLRenderbuffer is created or wrapped through `gst_gl_base_memory_alloc()` with GstGLRenderbufferAllocationParams.

## Functions

### gst_gl_renderbuffer_allocation_params_new ()

    GstGLRenderbufferAllocationParams *
    gst_gl_renderbuffer_allocation_params_new
                                   (GstGLContext *context,
                                    GstAllocationParams *alloc_params,
                                    GstGLFormat renderbuffer_format,
                                    guint width,
                                    guint height);

#### Parameters

context | a GstGLContext |
alloc_params | the GstAllocationParams for sysmem mappings of the texture. | [allow-none]
width | the width of the renderbuffer |
height | the height of the renderbuffer |
renderbuffer_format | the GstGLFormat for the created textures |

#### Returns

a new GstGLRenderbufferAllocationParams for allocating GstGLRenderbuffer's

Since: 1.10

### gst_gl_renderbuffer_allocation_params_new_wrapped ()

    GstGLRenderbufferAllocationParams *
    gst_gl_renderbuffer_allocation_params_new_wrapped
                                   (GstGLContext *context,
                                    GstAllocationParams *alloc_params,
                                    GstGLFormat renderbuffer_format,
                                    guint width,
                                    guint height,
                                    gpointer gl_handle,
                                    gpointer user_data,
                                    GDestroyNotify notify);

#### Parameters

context | a GstGLContext |
alloc_params | the GstAllocationParams for `tex_id` . | [allow-none]
width | the width of the renderbuffer |
height | the height of the renderbuffer |
renderbuffer_format | the GstGLFormat for `tex_id` |
gl_handle | the GL handle to wrap |
user_data | user data to call `notify` with. | [allow-none]
notify | a GDestroyNotify. | [allow-none]

#### Returns

a new GstGLRenderbufferAllocationParams for wrapping `gl_handle` as a renderbuffer

Since: 1.10

### gst_gl_renderbuffer_get_height ()

    gint
    gst_gl_renderbuffer_get_height (GstGLRenderbuffer *gl_mem);

#### Parameters

gl_mem | a GstGLRenderbuffer |

#### Returns

the configured height of `gl_mem`

Since: 1.10

### gst_gl_renderbuffer_get_id ()

    guint
    gst_gl_renderbuffer_get_id (GstGLRenderbuffer *gl_mem);

#### Parameters

gl_mem | a GstGLRenderbuffer |

#### Returns

the OpenGL renderbuffer handle of `gl_mem`

Since: 1.10

### gst_gl_renderbuffer_get_format ()

    GstGLFormat
    gst_gl_renderbuffer_get_format (GstGLRenderbuffer *gl_mem);

#### Parameters

gl_mem | a GstGLRenderbuffer |

#### Returns

the GstGLFormat of `gl_mem`

Since: 1.12

### gst_gl_renderbuffer_get_width ()

    gint
    gst_gl_renderbuffer_get_width (GstGLRenderbuffer *gl_mem);

#### Parameters

gl_mem | a GstGLRenderbuffer |

#### Returns

the configured width of `gl_mem`

Since: 1.10

### gst_gl_renderbuffer_init_once ()

    void
    gst_gl_renderbuffer_init_once (void);

Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLRenderbuffer operation.

Since: 1.10

### gst_is_gl_renderbuffer ()

    gboolean
    gst_is_gl_renderbuffer (GstMemory *mem);

#### Parameters

mem | a GstMemory |

#### Returns

whether the memory at `mem` is a GstGLRenderbuffer

Since: 1.10

## Types and Values

### GstGLRenderbufferAllocator

    typedef struct _GstGLRenderbufferAllocator GstGLRenderbufferAllocator;

Opaque GstGLRenderbufferAllocator struct

### GstGLRenderbufferAllocatorClass

    typedef struct {
      GstGLBaseMemoryAllocatorClass             parent_class;
    } GstGLRenderbufferAllocatorClass;

The GstGLRenderbufferAllocatorClass only contains private data

### GST_GL_RENDERBUFFER_ALLOCATOR_NAME

    #define GST_GL_RENDERBUFFER_ALLOCATOR_NAME   "GLRenderbuffer"

The name of the GL renderbuffer allocator

## See Also

GstMemory, GstAllocator