manpagez: man pages & more
html files: gst-plugins-base-libs-1.0
Home | html | info | man

GstGLBuffer

GstGLBuffer — memory subclass for GL buffers

Object Hierarchy

    GBoxed
    ╰── GstGLBufferAllocationParams
    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstAllocator
                ╰── GstGLBaseMemoryAllocator
                    ╰── GstGLBufferAllocator

Includes

#include <gst/gl/gl.h>

Description

GstGLBuffer is a GstMemory subclass providing support for the mapping of GL buffers.

Data is uploaded or downloaded from the GPU as is necessary.

Functions

gst_gl_buffer_init_once ()

void
gst_gl_buffer_init_once (void);

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

Since: 1.8


gst_is_gl_buffer ()

gboolean
gst_is_gl_buffer (GstMemory *mem);

Parameters

mem

a GstMemory

 

Returns

whether the memory at mem is a GstGLBuffer

Since: 1.8


gst_gl_buffer_allocation_params_new ()

GstGLBufferAllocationParams *
gst_gl_buffer_allocation_params_new (GstGLContext *context,
                                     gsize alloc_size,
                                     GstAllocationParams *alloc_params,
                                     guint gl_target,
                                     guint gl_usage);

Parameters

context

a GstGLContext

 

alloc_size

the size in bytes to allocate

 

alloc_params

the GstAllocationParams for tex_id .

[allow-none]

gl_target

the OpenGL target to allocate

 

gl_usage

the OpenGL usage hint to allocate with

 

Returns

a new GstGLBufferAllocationParams for allocating OpenGL buffer objects

Since: 1.8

Types and Values

GstGLBuffer

typedef struct {
  GstGLBaseMemory       mem;

  guint                 id;
  guint                 target;         /* XXX: put this in the allocator? */
  guint                 usage_hints;     /* XXX: put this in the allocator? */
} GstGLBuffer;

Represents information about a GL buffer

Members

GstGLBaseMemory mem;

the parent object

 

guint id;

the buffer id for this memory

 

guint target;

the OpenGL target of this texture for binding purposes

 

guint usage_hints;

the OpenGL usage hints this buffer was created with

 

struct GstGLBufferAllocationParams

struct GstGLBufferAllocationParams {
  GstGLAllocationParams     parent;

  guint                     gl_target;
  guint                     gl_usage;
};

Members

GstGLAllocationParams parent;

parent object

 

guint gl_target;

the OpenGL target to bind the buffer to

 

guint gl_usage;

the OpenGL usage hint to create the buffer with

 

GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_BUFFER

#define GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_BUFFER (1 << 4)

GL allocation flag indicating the allocation of a GL buffer.


GstGLBufferAllocator

typedef struct _GstGLBufferAllocator GstGLBufferAllocator;

Opaque GstGLAllocator struct


GstGLBufferAllocatorClass

typedef struct {
  GstGLBaseMemoryAllocatorClass parent_class;
} GstGLBufferAllocatorClass;

The GstGLBufferAllocatorClass only contains private data


GST_GL_BUFFER_ALLOCATOR_NAME

#define GST_GL_BUFFER_ALLOCATOR_NAME   "GLBuffer"

The name of the GL buffer allocator


GST_CAPS_FEATURE_MEMORY_GL_BUFFER

#define GST_CAPS_FEATURE_MEMORY_GL_BUFFER "memory:GLBuffer"

Name of the caps feature indicating the use of GL buffers

© manpagez.com 2000-2024
Individual documents may contain additional copyright information.