Aggregator


Object Hierarchy:

Object hierarchy for Aggregator

Description:

[ CCode ( cname = "GstAggregator" , lower_case_cprefix = "gst_aggregator_" , type_id = "gst_aggregator_get_type ()" ) ]
[ GIR ( name = "Aggregator" ) ]
[ Version ( since = "1.14" ) ]
public abstract class Aggregator : Element

Manages a set of pads with the purpose of aggregating their buffers.

Control is given to the subclass when all pads have data.

* Base class for mixers and muxers. Subclasses should at least implement the aggregate virtual method.

* Installs a PadChainFunction, a PadEventFullFunction and a PadQueryFunction to queue all serialized data packets per sink pad. Subclasses should not overwrite those, but instead implement sink_event and sink_query as needed.

* When data is queued on all pads, the aggregate vmethod is called.

* One can peek at the data on any given GstAggregatorPad with the peek_buffer method, and remove it from the pad with the pop_buffer method. When a buffer has been taken with pop_buffer, a new buffer can be queued on that pad.

* If the subclass wishes to push a buffer downstream in its aggregate implementation, it should do so through the finish_buffer method. This method will take care of sending and ordering mandatory events such as stream start, caps and segment.

* Same goes for EOS events, which should not be pushed directly by the subclass, it should instead return GST_FLOW_EOS in its aggregate implementation.

* Note that the aggregator logic regarding gap event handling is to turn these into gap buffers with matching PTS and duration. It will also flag these buffers with GST_BUFFER_FLAG_GAP and GST_BUFFER_FLAG_DROPPABLE to ease their identification and subsequent processing.

* Subclasses must use (a subclass of) AggregatorPad for both their sink and source pads. See add_static_pad_template_with_gtype.

This class used to live in gst-plugins-bad and was moved to core.


Namespace: Gst.Base

Content:

Properties:

Creation methods:

Methods:

Fields:

Inherited Members:

All known members inherited from class Gst.Element