GstCollectPads

GstCollectPads

Functions

void (*GstCollectDataDestroyNotify) ()
GstFlowReturn (*GstCollectPadsBufferFunction) ()
GstFlowReturn (*GstCollectPadsClipFunction) ()
gint (*GstCollectPadsCompareFunction) ()
gboolean (*GstCollectPadsEventFunction) ()
void (*GstCollectPadsFlushFunction) ()
gboolean (*GstCollectPadsQueryFunction) ()
GstFlowReturn (*GstCollectPadsFunction) ()
#define GST_COLLECT_PADS_STATE()
#define GST_COLLECT_PADS_STATE_IS_SET()
#define GST_COLLECT_PADS_STATE_SET()
#define GST_COLLECT_PADS_STATE_UNSET()
#define GST_COLLECT_PADS_GET_STREAM_LOCK()
#define GST_COLLECT_PADS_STREAM_LOCK()
#define GST_COLLECT_PADS_STREAM_UNLOCK()
#define GST_COLLECT_PADS_DTS()
#define GST_COLLECT_PADS_DTS_IS_VALID()
GstCollectPads * gst_collect_pads_new ()
GstCollectData * gst_collect_pads_add_pad ()
gboolean gst_collect_pads_remove_pad ()
void gst_collect_pads_start ()
void gst_collect_pads_stop ()
guint gst_collect_pads_available ()
guint gst_collect_pads_flush ()
GstBuffer * gst_collect_pads_peek ()
GstBuffer * gst_collect_pads_pop ()
GstBuffer * gst_collect_pads_read_buffer ()
GstBuffer * gst_collect_pads_take_buffer ()
GstFlowReturn gst_collect_pads_clip_running_time ()
gboolean gst_collect_pads_query_default ()
gboolean gst_collect_pads_event_default ()
gboolean gst_collect_pads_src_event_default ()
void gst_collect_pads_set_buffer_function ()
void gst_collect_pads_set_clip_function ()
void gst_collect_pads_set_compare_function ()
void gst_collect_pads_set_event_function ()
void gst_collect_pads_set_flush_function ()
void gst_collect_pads_set_query_function ()
void gst_collect_pads_set_flushing ()
void gst_collect_pads_set_function ()
void gst_collect_pads_set_waiting ()

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstCollectPads

Includes

#include <gst/base/gstcollectpads.h>

Description

Functions

GstCollectDataDestroyNotify ()

void
(*GstCollectDataDestroyNotify) (GstCollectData *data);

GstCollectPadsBufferFunction ()

GstFlowReturn
(*GstCollectPadsBufferFunction) (GstCollectPads *pads,
                                 GstCollectData *data,
                                 GstBuffer *buffer,
                                 gpointer user_data);

GstCollectPadsClipFunction ()

GstFlowReturn
(*GstCollectPadsClipFunction) (GstCollectPads *pads,
                               GstCollectData *data,
                               GstBuffer *inbuffer,
                               GstBuffer **outbuffer,
                               gpointer user_data);

GstCollectPadsCompareFunction ()

gint
(*GstCollectPadsCompareFunction) (GstCollectPads *pads,
                                  GstCollectData *data1,
                                  GstClockTime timestamp1,
                                  GstCollectData *data2,
                                  GstClockTime timestamp2,
                                  gpointer user_data);

GstCollectPadsEventFunction ()

gboolean
(*GstCollectPadsEventFunction) (GstCollectPads *pads,
                                GstCollectData *pad,
                                GstEvent *event,
                                gpointer user_data);

GstCollectPadsFlushFunction ()

void
(*GstCollectPadsFlushFunction) (GstCollectPads *pads,
                                gpointer user_data);

GstCollectPadsQueryFunction ()

gboolean
(*GstCollectPadsQueryFunction) (GstCollectPads *pads,
                                GstCollectData *pad,
                                GstQuery *query,
                                gpointer user_data);

GstCollectPadsFunction ()

GstFlowReturn
(*GstCollectPadsFunction) (GstCollectPads *pads,
                           gpointer user_data);

GST_COLLECT_PADS_STATE()

#define GST_COLLECT_PADS_STATE(data)                 (((GstCollectData *) data)->state)

GST_COLLECT_PADS_STATE_IS_SET()

#define GST_COLLECT_PADS_STATE_IS_SET(data,flag)     !!(GST_COLLECT_PADS_STATE (data) & flag)

GST_COLLECT_PADS_STATE_SET()

#define GST_COLLECT_PADS_STATE_SET(data,flag)        (GST_COLLECT_PADS_STATE (data) |= flag)

GST_COLLECT_PADS_STATE_UNSET()

#define GST_COLLECT_PADS_STATE_UNSET(data,flag)      (GST_COLLECT_PADS_STATE (data) &= ~(flag))

GST_COLLECT_PADS_GET_STREAM_LOCK()

#define GST_COLLECT_PADS_GET_STREAM_LOCK(pads) (&((GstCollectPads *)pads)->stream_lock)

GST_COLLECT_PADS_STREAM_LOCK()

#define GST_COLLECT_PADS_STREAM_LOCK(pads)     g_rec_mutex_lock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads))

GST_COLLECT_PADS_STREAM_UNLOCK()

#define GST_COLLECT_PADS_STREAM_UNLOCK(pads)   g_rec_mutex_unlock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads))

GST_COLLECT_PADS_DTS()

#define GST_COLLECT_PADS_DTS(data)                   (((GstCollectData *) data)->ABI.abi.dts)

GST_COLLECT_PADS_DTS_IS_VALID()

#define GST_COLLECT_PADS_DTS_IS_VALID(data)          (GST_CLOCK_STIME_IS_VALID (GST_COLLECT_PADS_DTS (data)))

gst_collect_pads_new ()

GstCollectPads *
gst_collect_pads_new (void);

gst_collect_pads_add_pad ()

GstCollectData *
gst_collect_pads_add_pad (GstCollectPads *pads,
                          GstPad *pad,
                          guint size,
                          GstCollectDataDestroyNotify destroy_notify,
                          gboolean lock);

gst_collect_pads_remove_pad ()

gboolean
gst_collect_pads_remove_pad (GstCollectPads *pads,
                             GstPad *pad);

gst_collect_pads_start ()

void
gst_collect_pads_start (GstCollectPads *pads);

gst_collect_pads_stop ()

void
gst_collect_pads_stop (GstCollectPads *pads);

gst_collect_pads_available ()

guint
gst_collect_pads_available (GstCollectPads *pads);

gst_collect_pads_flush ()

guint
gst_collect_pads_flush (GstCollectPads *pads,
                        GstCollectData *data,
                        guint size);

gst_collect_pads_peek ()

GstBuffer *
gst_collect_pads_peek (GstCollectPads *pads,
                       GstCollectData *data);

gst_collect_pads_pop ()

GstBuffer *
gst_collect_pads_pop (GstCollectPads *pads,
                      GstCollectData *data);

gst_collect_pads_read_buffer ()

GstBuffer *
gst_collect_pads_read_buffer (GstCollectPads *pads,
                              GstCollectData *data,
                              guint size);

gst_collect_pads_take_buffer ()

GstBuffer *
gst_collect_pads_take_buffer (GstCollectPads *pads,
                              GstCollectData *data,
                              guint size);

gst_collect_pads_clip_running_time ()

GstFlowReturn
gst_collect_pads_clip_running_time (GstCollectPads *pads,
                                    GstCollectData *cdata,
                                    GstBuffer *buf,
                                    GstBuffer **outbuf,
                                    gpointer user_data);

gst_collect_pads_query_default ()

gboolean
gst_collect_pads_query_default (GstCollectPads *pads,
                                GstCollectData *data,
                                GstQuery *query,
                                gboolean discard);

gst_collect_pads_event_default ()

gboolean
gst_collect_pads_event_default (GstCollectPads *pads,
                                GstCollectData *data,
                                GstEvent *event,
                                gboolean discard);

gst_collect_pads_src_event_default ()

gboolean
gst_collect_pads_src_event_default (GstCollectPads *pads,
                                    GstPad *pad,
                                    GstEvent *event);

gst_collect_pads_set_buffer_function ()

void
gst_collect_pads_set_buffer_function (GstCollectPads *pads,
                                      GstCollectPadsBufferFunction func,
                                      gpointer user_data);

gst_collect_pads_set_clip_function ()

void
gst_collect_pads_set_clip_function (GstCollectPads *pads,
                                    GstCollectPadsClipFunction clipfunc,
                                    gpointer user_data);

gst_collect_pads_set_compare_function ()

void
gst_collect_pads_set_compare_function (GstCollectPads *pads,
                                       GstCollectPadsCompareFunction func,
                                       gpointer user_data);

gst_collect_pads_set_event_function ()

void
gst_collect_pads_set_event_function (GstCollectPads *pads,
                                     GstCollectPadsEventFunction func,
                                     gpointer user_data);

gst_collect_pads_set_flush_function ()

void
gst_collect_pads_set_flush_function (GstCollectPads *pads,
                                     GstCollectPadsFlushFunction func,
                                     gpointer user_data);

gst_collect_pads_set_query_function ()

void
gst_collect_pads_set_query_function (GstCollectPads *pads,
                                     GstCollectPadsQueryFunction func,
                                     gpointer user_data);

gst_collect_pads_set_flushing ()

void
gst_collect_pads_set_flushing (GstCollectPads *pads,
                               gboolean flushing);

gst_collect_pads_set_function ()

void
gst_collect_pads_set_function (GstCollectPads *pads,
                               GstCollectPadsFunction func,
                               gpointer user_data);

gst_collect_pads_set_waiting ()

void
gst_collect_pads_set_waiting (GstCollectPads *pads,
                              GstCollectData *data,
                              gboolean waiting);

Types and Values

struct GstCollectPads

struct GstCollectPads {
  GSList        *data;                  /* list of CollectData items */
};

struct GstCollectData

struct GstCollectData {
  /* with STREAM_LOCK of @collect */
  GstCollectPads        *collect;
  GstPad                *pad;
  GstBuffer             *buffer;
  guint                  pos;
  GstSegment             segment;

      gint64 dts;
};

enum GstCollectPadsStateFlags

Members

GST_COLLECT_PADS_STATE_EOS

   

GST_COLLECT_PADS_STATE_FLUSHING

   

GST_COLLECT_PADS_STATE_NEW_SEGMENT

   

GST_COLLECT_PADS_STATE_WAITING

   

GST_COLLECT_PADS_STATE_LOCKED