GstAggregator

GstAggregator

Functions

Types and Values

Description

Functions

gst_aggregator_finish_buffer ()

GstFlowReturn
gst_aggregator_finish_buffer (GstAggregator *agg,
                              GstBuffer *buffer);

gst_aggregator_set_src_caps ()

void
gst_aggregator_set_src_caps (GstAggregator *agg,
                             GstCaps *caps);

gst_aggregator_iterate_sinkpads ()

gboolean
gst_aggregator_iterate_sinkpads (GstAggregator *self,
                                 GstAggregatorPadForeachFunc func,
                                 gpointer user_data);

gst_aggregator_get_latency ()

GstClockTime
gst_aggregator_get_latency (GstAggregator *self);

Types and Values

struct GstAggregator

struct GstAggregator {
  GstElement               parent;

  GstPad                *  srcpad;

  /* Only access with the object lock held */
  GstSegment               segment;
};

struct GstAggregatorClass

struct GstAggregatorClass {
  GstElementClass   parent_class;

  GType             sinkpads_type;

  GstFlowReturn     (*flush)          (GstAggregator    *  aggregator);

  GstFlowReturn     (*clip)           (GstAggregator    *  aggregator,
                                       GstAggregatorPad *  aggregator_pad,
                                       GstBuffer        *  buf,
                                       GstBuffer        ** outbuf);

  /* sinkpads virtual methods */
  gboolean          (*sink_event)     (GstAggregator    *  aggregator,
                                       GstAggregatorPad *  aggregator_pad,
                                       GstEvent         *  event);

  gboolean          (*sink_query)     (GstAggregator    *  aggregator,
                                       GstAggregatorPad *  aggregator_pad,
                                       GstQuery         *  query);

  /* srcpad virtual methods */
  gboolean          (*src_event)      (GstAggregator    *  aggregator,
                                       GstEvent         *  event);

  gboolean          (*src_query)      (GstAggregator    *  aggregator,
                                       GstQuery         *  query);

  gboolean          (*src_activate)   (GstAggregator    *  aggregator,
                                       GstPadMode          mode,
                                       gboolean            active);

  GstFlowReturn     (*aggregate)      (GstAggregator    *  aggregator,
                                       gboolean            timeout);

  gboolean          (*stop)           (GstAggregator    *  aggregator);

  gboolean          (*start)          (GstAggregator    *  aggregator);

  GstClockTime      (*get_next_time)  (GstAggregator    *  aggregator);

  GstAggregatorPad * (*create_new_pad) (GstAggregator  * self,
                                        GstPadTemplate * templ,
                                        const gchar    * req_name,
                                        const GstCaps  * caps);
};