Top | ![]() |
![]() |
![]() |
![]() |
GstFlowReturn (*GstCollectPadsBufferFunction) (GstCollectPads *pads
,GstCollectData *data
,GstBuffer *buffer
,gpointer user_data
);
GstFlowReturn (*GstCollectPadsClipFunction) (GstCollectPads *pads
,GstCollectData *data
,GstBuffer *inbuffer
,GstBuffer **outbuffer
,gpointer user_data
);
gint (*GstCollectPadsCompareFunction) (GstCollectPads *pads
,GstCollectData *data1
,GstClockTime timestamp1
,GstCollectData *data2
,GstClockTime timestamp2
,gpointer user_data
);
gboolean (*GstCollectPadsEventFunction) (GstCollectPads *pads
,GstCollectData *pad
,GstEvent *event
,gpointer user_data
);
void (*GstCollectPadsFlushFunction) (GstCollectPads *pads
,gpointer user_data
);
gboolean (*GstCollectPadsQueryFunction) (GstCollectPads *pads
,GstCollectData *pad
,GstQuery *query
,gpointer user_data
);
GstFlowReturn (*GstCollectPadsFunction) (GstCollectPads *pads
,gpointer user_data
);
#define GST_COLLECT_PADS_STATE_IS_SET(data,flag) !!(GST_COLLECT_PADS_STATE (data) & flag)
#define GST_COLLECT_PADS_STATE_SET(data,flag) (GST_COLLECT_PADS_STATE (data) |= flag)
#define GST_COLLECT_PADS_STATE_UNSET(data,flag) (GST_COLLECT_PADS_STATE (data) &= ~(flag))
#define GST_COLLECT_PADS_GET_STREAM_LOCK(pads) (&((GstCollectPads *)pads)->stream_lock)
#define GST_COLLECT_PADS_STREAM_LOCK(pads) g_rec_mutex_lock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads))
#define GST_COLLECT_PADS_STREAM_UNLOCK(pads) g_rec_mutex_unlock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads))
#define GST_COLLECT_PADS_DTS_IS_VALID(data) (GST_CLOCK_STIME_IS_VALID (GST_COLLECT_PADS_DTS (data)))
GstCollectData * gst_collect_pads_add_pad (GstCollectPads *pads
,GstPad *pad
,guint size
,GstCollectDataDestroyNotify destroy_notify
,gboolean lock
);
gboolean gst_collect_pads_remove_pad (GstCollectPads *pads
,GstPad *pad
);
guint gst_collect_pads_flush (GstCollectPads *pads
,GstCollectData *data
,guint size
);
GstBuffer * gst_collect_pads_peek (GstCollectPads *pads
,GstCollectData *data
);
GstBuffer * gst_collect_pads_pop (GstCollectPads *pads
,GstCollectData *data
);
GstBuffer * gst_collect_pads_read_buffer (GstCollectPads *pads
,GstCollectData *data
,guint size
);
GstBuffer * gst_collect_pads_take_buffer (GstCollectPads *pads
,GstCollectData *data
,guint size
);
GstFlowReturn gst_collect_pads_clip_running_time (GstCollectPads *pads
,GstCollectData *cdata
,GstBuffer *buf
,GstBuffer **outbuf
,gpointer user_data
);
gboolean gst_collect_pads_query_default (GstCollectPads *pads
,GstCollectData *data
,GstQuery *query
,gboolean discard
);
gboolean gst_collect_pads_event_default (GstCollectPads *pads
,GstCollectData *data
,GstEvent *event
,gboolean discard
);
gboolean gst_collect_pads_src_event_default (GstCollectPads *pads
,GstPad *pad
,GstEvent *event
);
void gst_collect_pads_set_buffer_function (GstCollectPads *pads
,GstCollectPadsBufferFunction func
,gpointer user_data
);
void gst_collect_pads_set_clip_function (GstCollectPads *pads
,GstCollectPadsClipFunction clipfunc
,gpointer user_data
);
void gst_collect_pads_set_compare_function (GstCollectPads *pads
,GstCollectPadsCompareFunction func
,gpointer user_data
);
void gst_collect_pads_set_event_function (GstCollectPads *pads
,GstCollectPadsEventFunction func
,gpointer user_data
);
void gst_collect_pads_set_flush_function (GstCollectPads *pads
,GstCollectPadsFlushFunction func
,gpointer user_data
);
void gst_collect_pads_set_query_function (GstCollectPads *pads
,GstCollectPadsQueryFunction func
,gpointer user_data
);
void gst_collect_pads_set_flushing (GstCollectPads *pads
,gboolean flushing
);
void gst_collect_pads_set_function (GstCollectPads *pads
,GstCollectPadsFunction func
,gpointer user_data
);
void gst_collect_pads_set_waiting (GstCollectPads *pads
,GstCollectData *data
,gboolean waiting
);