GstBufferPool

GstBufferPool

Functions

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstBufferPool

Includes

#include <gst/gst.h>

Description

Functions

GST_BUFFER_POOL_IS_FLUSHING()

#define GST_BUFFER_POOL_IS_FLUSHING(pool)  (g_atomic_int_get (&pool->flushing))

gst_buffer_pool_new ()

GstBufferPool *
gst_buffer_pool_new (void);

gst_buffer_pool_config_get_params ()

gboolean
gst_buffer_pool_config_get_params (GstStructure *config,
                                   GstCaps **caps,
                                   guint *size,
                                   guint *min_buffers,
                                   guint *max_buffers);

gst_buffer_pool_config_set_params ()

void
gst_buffer_pool_config_set_params (GstStructure *config,
                                   GstCaps *caps,
                                   guint size,
                                   guint min_buffers,
                                   guint max_buffers);

gst_buffer_pool_config_validate_params ()

gboolean
gst_buffer_pool_config_validate_params
                               (GstStructure *config,
                                GstCaps *caps,
                                guint size,
                                guint min_buffers,
                                guint max_buffers);

gst_buffer_pool_config_get_allocator ()

gboolean
gst_buffer_pool_config_get_allocator (GstStructure *config,
                                      GstAllocator **allocator,
                                      GstAllocationParams *params);

gst_buffer_pool_config_set_allocator ()

void
gst_buffer_pool_config_set_allocator (GstStructure *config,
                                      GstAllocator *allocator,
                                      const GstAllocationParams *params);

gst_buffer_pool_config_n_options ()

guint
gst_buffer_pool_config_n_options (GstStructure *config);

gst_buffer_pool_config_add_option ()

void
gst_buffer_pool_config_add_option (GstStructure *config,
                                   const gchar *option);

gst_buffer_pool_config_get_option ()

const gchar *
gst_buffer_pool_config_get_option (GstStructure *config,
                                   guint index);

gst_buffer_pool_config_has_option ()

gboolean
gst_buffer_pool_config_has_option (GstStructure *config,
                                   const gchar *option);

gst_buffer_pool_get_options ()

const gchar **
gst_buffer_pool_get_options (GstBufferPool *pool);

gst_buffer_pool_has_option ()

gboolean
gst_buffer_pool_has_option (GstBufferPool *pool,
                            const gchar *option);

gst_buffer_pool_get_config ()

GstStructure *
gst_buffer_pool_get_config (GstBufferPool *pool);

gst_buffer_pool_set_config ()

gboolean
gst_buffer_pool_set_config (GstBufferPool *pool,
                            GstStructure *config);

gst_buffer_pool_set_active ()

gboolean
gst_buffer_pool_set_active (GstBufferPool *pool,
                            gboolean active);

gst_buffer_pool_is_active ()

gboolean
gst_buffer_pool_is_active (GstBufferPool *pool);

gst_buffer_pool_set_flushing ()

void
gst_buffer_pool_set_flushing (GstBufferPool *pool,
                              gboolean flushing);

gst_buffer_pool_acquire_buffer ()

GstFlowReturn
gst_buffer_pool_acquire_buffer (GstBufferPool *pool,
                                GstBuffer **buffer,
                                GstBufferPoolAcquireParams *params);

gst_buffer_pool_release_buffer ()

void
gst_buffer_pool_release_buffer (GstBufferPool *pool,
                                GstBuffer *buffer);

Types and Values

GstBufferPool

typedef struct _GstBufferPool GstBufferPool;

struct GstBufferPoolClass

struct GstBufferPoolClass {
  GstObjectClass    object_class;

  const gchar ** (*get_options)    (GstBufferPool *pool);
  gboolean       (*set_config)     (GstBufferPool *pool, GstStructure *config);

  gboolean       (*start)          (GstBufferPool *pool);
  gboolean       (*stop)           (GstBufferPool *pool);

  GstFlowReturn  (*acquire_buffer) (GstBufferPool *pool, GstBuffer **buffer,
                                    GstBufferPoolAcquireParams *params);
  GstFlowReturn  (*alloc_buffer)   (GstBufferPool *pool, GstBuffer **buffer,
                                    GstBufferPoolAcquireParams *params);
  void           (*reset_buffer)   (GstBufferPool *pool, GstBuffer *buffer);
  void           (*release_buffer) (GstBufferPool *pool, GstBuffer *buffer);
  void           (*free_buffer)    (GstBufferPool *pool, GstBuffer *buffer);
  void           (*flush_start)    (GstBufferPool *pool);
  void           (*flush_stop)     (GstBufferPool *pool);
};

enum GstBufferPoolAcquireFlags

Members

GST_BUFFER_POOL_ACQUIRE_FLAG_NONE

   

GST_BUFFER_POOL_ACQUIRE_FLAG_KEY_UNIT

   

GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT

   

GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT

   

GST_BUFFER_POOL_ACQUIRE_FLAG_LAST

   

struct GstBufferPoolAcquireParams

struct GstBufferPoolAcquireParams {
  GstFormat                 format;
  gint64                    start;
  gint64                    stop;
  GstBufferPoolAcquireFlags flags;
};