GstAggregator

Manages a set of pads with the purpose of aggregating their buffers. Control is given to the subclass when all pads have data.

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

GstAggregator

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstAggregator

Aggregator base class object structure.

Members

parent (GstElement) –
No description available
srcpad (GstPad *) –

the aggregator's source pad


Class structure

GstAggregatorClass

The aggregator base class will handle in a thread-safe way all manners of concurrent flushes, seeks, pad additions and removals, leaving to the subclass the responsibility of clipping buffers, and aggregating buffers in the way the implementor sees fit.

It will also take care of event ordering (stream-start, segment, eos).

Basically, a simple implementation will override aggregate, and call _finish_buffer from inside that function.

Fields
parent_class (GstElementClass) –
No description available

GstBase.AggregatorClass

The aggregator base class will handle in a thread-safe way all manners of concurrent flushes, seeks, pad additions and removals, leaving to the subclass the responsibility of clipping buffers, and aggregating buffers in the way the implementor sees fit.

It will also take care of event ordering (stream-start, segment, eos).

Basically, a simple implementation will override aggregate, and call _finish_buffer from inside that function.

Attributes
parent_class (Gst.ElementClass) –
No description available

GstBase.AggregatorClass

The aggregator base class will handle in a thread-safe way all manners of concurrent flushes, seeks, pad additions and removals, leaving to the subclass the responsibility of clipping buffers, and aggregating buffers in the way the implementor sees fit.

It will also take care of event ordering (stream-start, segment, eos).

Basically, a simple implementation will override aggregate, and call _finish_buffer from inside that function.

Attributes
parent_class (Gst.ElementClass) –
No description available

GstAggregator

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstAggregator

Aggregator base class object structure.

Members

parent (GstElement) –
No description available
srcpad (GstPad) –

the aggregator's source pad


GstAggregator

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstAggregator

Aggregator base class object structure.

Members

parent (GstElement) –
No description available
srcpad (GstPad) –

the aggregator's source pad


Methods

gst_aggregator_finish_buffer

GstFlowReturn
gst_aggregator_finish_buffer (GstAggregator * aggregator,
                              GstBuffer * buffer)

This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator

The GstAggregator

buffer ( [transfer: full] ) –

the GstBuffer to push.

Returns
No description available

GstBase.Aggregator.prototype.finish_buffer

function GstBase.Aggregator.prototype.finish_buffer(buffer: Gst.Buffer): {
    // javascript wrapper for 'gst_aggregator_finish_buffer'
}

This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –

The GstBase.Aggregator

buffer ( Gst.Buffer ) –

the Gst.Buffer to push.

Returns ( Gst.FlowReturn ) –
No description available

GstBase.Aggregator.finish_buffer

def GstBase.Aggregator.finish_buffer (self, buffer):
    #python wrapper for 'gst_aggregator_finish_buffer'

This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –

The GstBase.Aggregator

buffer ( Gst.Buffer ) –

the Gst.Buffer to push.

Returns ( Gst.FlowReturn ) –
No description available

gst_aggregator_finish_buffer_list

GstFlowReturn
gst_aggregator_finish_buffer_list (GstAggregator * aggregator,
                                   GstBufferList * bufferlist)

This method will push the provided output buffer list downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator

The GstAggregator

bufferlist ( [transfer: full] ) –

the GstBufferList to push.

Returns
No description available

Since : 1.18


GstBase.Aggregator.prototype.finish_buffer_list

function GstBase.Aggregator.prototype.finish_buffer_list(bufferlist: Gst.BufferList): {
    // javascript wrapper for 'gst_aggregator_finish_buffer_list'
}

This method will push the provided output buffer list downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –

The GstBase.Aggregator

bufferlist ( Gst.BufferList ) –

the Gst.BufferList to push.

Returns ( Gst.FlowReturn ) –
No description available

Since : 1.18


GstBase.Aggregator.finish_buffer_list

def GstBase.Aggregator.finish_buffer_list (self, bufferlist):
    #python wrapper for 'gst_aggregator_finish_buffer_list'

This method will push the provided output buffer list downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –

The GstBase.Aggregator

bufferlist ( Gst.BufferList ) –

the Gst.BufferList to push.

Returns ( Gst.FlowReturn ) –
No description available

Since : 1.18


gst_aggregator_get_allocator

gst_aggregator_get_allocator (GstAggregator * self,
                              GstAllocator ** allocator,
                              GstAllocationParams * params)

Lets GstAggregator sub-classes get the memory allocator acquired by the base class and its params.

Unref the allocator after use it.

Parameters:

self

a GstAggregator

allocator ( [out] [allow-none] [transfer: full] ) –

the GstAllocator used

params ( [out] [allow-none] [transfer: full] ) –

the GstAllocationParams of allocator


GstBase.Aggregator.prototype.get_allocator

function GstBase.Aggregator.prototype.get_allocator(): {
    // javascript wrapper for 'gst_aggregator_get_allocator'
}

Lets GstBase.Aggregator sub-classes get the memory allocator acquired by the base class and its params.

Unref the allocator after use it.

Parameters:


GstBase.Aggregator.get_allocator

def GstBase.Aggregator.get_allocator (self):
    #python wrapper for 'gst_aggregator_get_allocator'

Lets GstBase.Aggregator sub-classes get the memory allocator acquired by the base class and its params.

Unref the allocator after use it.

Parameters:


gst_aggregator_get_buffer_pool

GstBufferPool *
gst_aggregator_get_buffer_pool (GstAggregator * self)

Parameters:

self

a GstAggregator

Returns ( [transfer: full] ) –

the instance of the GstBufferPool used by trans; free it after use it


GstBase.Aggregator.prototype.get_buffer_pool

function GstBase.Aggregator.prototype.get_buffer_pool(): {
    // javascript wrapper for 'gst_aggregator_get_buffer_pool'
}

Parameters:

Returns ( Gst.BufferPool ) –

the instance of the Gst.BufferPool used by trans; free it after use it


GstBase.Aggregator.get_buffer_pool

def GstBase.Aggregator.get_buffer_pool (self):
    #python wrapper for 'gst_aggregator_get_buffer_pool'

Parameters:

Returns ( Gst.BufferPool ) –

the instance of the Gst.BufferPool used by trans; free it after use it


gst_aggregator_get_latency

GstClockTime
gst_aggregator_get_latency (GstAggregator * self)

Retrieves the latency values reported by self in response to the latency query, or GST_CLOCK_TIME_NONE if there is not live source connected and the element will not wait for the clock.

Typically only called by subclasses.

Parameters:

self

a GstAggregator

Returns

The latency or GST_CLOCK_TIME_NONE if the element does not sync


GstBase.Aggregator.prototype.get_latency

function GstBase.Aggregator.prototype.get_latency(): {
    // javascript wrapper for 'gst_aggregator_get_latency'
}

Retrieves the latency values reported by self in response to the latency query, or Gst.CLOCK_TIME_NONE if there is not live source connected and the element will not wait for the clock.

Typically only called by subclasses.

Parameters:

Returns ( Number ) –

The latency or Gst.CLOCK_TIME_NONE if the element does not sync


GstBase.Aggregator.get_latency

def GstBase.Aggregator.get_latency (self):
    #python wrapper for 'gst_aggregator_get_latency'

Retrieves the latency values reported by self in response to the latency query, or Gst.CLOCK_TIME_NONE if there is not live source connected and the element will not wait for the clock.

Typically only called by subclasses.

Parameters:

Returns ( int ) –

The latency or Gst.CLOCK_TIME_NONE if the element does not sync


gst_aggregator_negotiate

gboolean
gst_aggregator_negotiate (GstAggregator * self)

Negotiates src pad caps with downstream elements. Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again if negotiate() fails.

Parameters:

self

a GstAggregator

Returns

TRUE if the negotiation succeeded, else FALSE.

Since : 1.18


GstBase.Aggregator.prototype.negotiate

function GstBase.Aggregator.prototype.negotiate(): {
    // javascript wrapper for 'gst_aggregator_negotiate'
}

Negotiates src pad caps with downstream elements. Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again if negotiate() fails.

Parameters:

Returns ( Number ) –

true if the negotiation succeeded, else false.

Since : 1.18


GstBase.Aggregator.negotiate

def GstBase.Aggregator.negotiate (self):
    #python wrapper for 'gst_aggregator_negotiate'

Negotiates src pad caps with downstream elements. Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again if negotiate() fails.

Parameters:

Returns ( bool ) –

True if the negotiation succeeded, else False.

Since : 1.18


gst_aggregator_peek_next_sample

GstSample *
gst_aggregator_peek_next_sample (GstAggregator * self,
                                 GstAggregatorPad * pad)

Use this function to determine what input buffers will be aggregated to produce the next output buffer. This should only be called from a samples-selected handler, and can be used to precisely control aggregating parameters for a given set of input samples.

Parameters:

self
No description available
pad
No description available
Returns

The sample that is about to be aggregated. It may hold a GstBuffer or a GstBufferList. The contents of its info structure is subclass-dependent, and documented on a subclass basis. The buffers held by the sample are not writable.

Since : 1.18


GstBase.Aggregator.prototype.peek_next_sample

function GstBase.Aggregator.prototype.peek_next_sample(pad: GstBase.AggregatorPad): {
    // javascript wrapper for 'gst_aggregator_peek_next_sample'
}

Use this function to determine what input buffers will be aggregated to produce the next output buffer. This should only be called from a samples-selected handler, and can be used to precisely control aggregating parameters for a given set of input samples.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pad ( GstBase.AggregatorPad ) –
No description available
Returns ( Gst.Sample ) –

The sample that is about to be aggregated. It may hold a Gst.Buffer or a Gst.BufferList. The contents of its info structure is subclass-dependent, and documented on a subclass basis. The buffers held by the sample are not writable.

Since : 1.18


GstBase.Aggregator.peek_next_sample

def GstBase.Aggregator.peek_next_sample (self, pad):
    #python wrapper for 'gst_aggregator_peek_next_sample'

Use this function to determine what input buffers will be aggregated to produce the next output buffer. This should only be called from a samples-selected handler, and can be used to precisely control aggregating parameters for a given set of input samples.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pad ( GstBase.AggregatorPad ) –
No description available
Returns ( Gst.Sample ) –

The sample that is about to be aggregated. It may hold a Gst.Buffer or a Gst.BufferList. The contents of its info structure is subclass-dependent, and documented on a subclass basis. The buffers held by the sample are not writable.

Since : 1.18


gst_aggregator_selected_samples

gst_aggregator_selected_samples (GstAggregator * self,
                                 GstClockTime pts,
                                 GstClockTime dts,
                                 GstClockTime duration,
                                 GstStructure * info)

Subclasses should call this when they have prepared the buffers they will aggregate for each of their sink pads, but before using any of the properties of the pads that govern how aggregation should be performed, for example z-index for video aggregators.

If gst_aggregator_update_segment is used by the subclass, it MUST be called before gst_aggregator_selected_samples.

This function MUST only be called from the aggregate() function.

Parameters:

self
No description available
pts

The presentation timestamp of the next output buffer

dts

The decoding timestamp of the next output buffer

duration

The duration of the next output buffer

info ( [nullable] ) –

a GstStructure containing additional information

Since : 1.18


GstBase.Aggregator.prototype.selected_samples

function GstBase.Aggregator.prototype.selected_samples(pts: Number, dts: Number, duration: Number, info: Gst.Structure): {
    // javascript wrapper for 'gst_aggregator_selected_samples'
}

Subclasses should call this when they have prepared the buffers they will aggregate for each of their sink pads, but before using any of the properties of the pads that govern how aggregation should be performed, for example z-index for video aggregators.

If GstBase.Aggregator.prototype.update_segment is used by the subclass, it MUST be called before GstBase.Aggregator.prototype.selected_samples.

This function MUST only be called from the vfunc_aggregate() function.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pts ( Number ) –

The presentation timestamp of the next output buffer

dts ( Number ) –

The decoding timestamp of the next output buffer

duration ( Number ) –

The duration of the next output buffer

info ( Gst.Structure ) –

a Gst.Structure containing additional information

Since : 1.18


GstBase.Aggregator.selected_samples

def GstBase.Aggregator.selected_samples (self, pts, dts, duration, info):
    #python wrapper for 'gst_aggregator_selected_samples'

Subclasses should call this when they have prepared the buffers they will aggregate for each of their sink pads, but before using any of the properties of the pads that govern how aggregation should be performed, for example z-index for video aggregators.

If GstBase.Aggregator.update_segment is used by the subclass, it MUST be called before GstBase.Aggregator.selected_samples.

This function MUST only be called from the do_aggregate() function.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pts ( int ) –

The presentation timestamp of the next output buffer

dts ( int ) –

The decoding timestamp of the next output buffer

duration ( int ) –

The duration of the next output buffer

info ( Gst.Structure ) –

a Gst.Structure containing additional information

Since : 1.18


gst_aggregator_set_latency

gst_aggregator_set_latency (GstAggregator * self,
                            GstClockTime min_latency,
                            GstClockTime max_latency)

Lets GstAggregator sub-classes tell the baseclass what their internal latency is. Will also post a LATENCY message on the bus so the pipeline can reconfigure its global latency.

Parameters:

self

a GstAggregator

min_latency

minimum latency

max_latency

maximum latency


GstBase.Aggregator.prototype.set_latency

function GstBase.Aggregator.prototype.set_latency(min_latency: Number, max_latency: Number): {
    // javascript wrapper for 'gst_aggregator_set_latency'
}

Lets GstBase.Aggregator sub-classes tell the baseclass what their internal latency is. Will also post a LATENCY message on the bus so the pipeline can reconfigure its global latency.

Parameters:

min_latency ( Number ) –

minimum latency

max_latency ( Number ) –

maximum latency


GstBase.Aggregator.set_latency

def GstBase.Aggregator.set_latency (self, min_latency, max_latency):
    #python wrapper for 'gst_aggregator_set_latency'

Lets GstBase.Aggregator sub-classes tell the baseclass what their internal latency is. Will also post a LATENCY message on the bus so the pipeline can reconfigure its global latency.

Parameters:

min_latency ( int ) –

minimum latency

max_latency ( int ) –

maximum latency


gst_aggregator_set_src_caps

gst_aggregator_set_src_caps (GstAggregator * self,
                             GstCaps * caps)

Sets the caps to be used on the src pad.

Parameters:

self

The GstAggregator

caps

The GstCaps to set on the src pad.


GstBase.Aggregator.prototype.set_src_caps

function GstBase.Aggregator.prototype.set_src_caps(caps: Gst.Caps): {
    // javascript wrapper for 'gst_aggregator_set_src_caps'
}

Sets the caps to be used on the src pad.

Parameters:

caps ( Gst.Caps ) –

The Gst.Caps to set on the src pad.


GstBase.Aggregator.set_src_caps

def GstBase.Aggregator.set_src_caps (self, caps):
    #python wrapper for 'gst_aggregator_set_src_caps'

Sets the caps to be used on the src pad.

Parameters:

caps ( Gst.Caps ) –

The Gst.Caps to set on the src pad.


gst_aggregator_simple_get_next_time

GstClockTime
gst_aggregator_simple_get_next_time (GstAggregator * self)

This is a simple get_next_time() implementation that just looks at the GstSegment on the srcpad of the aggregator and bases the next time on the running time there.

This is the desired behaviour in most cases where you have a live source and you have a dead line based aggregator subclass.

Parameters:

self

A GstAggregator

Returns

The running time based on the position

Since : 1.16


GstBase.Aggregator.prototype.simple_get_next_time

function GstBase.Aggregator.prototype.simple_get_next_time(): {
    // javascript wrapper for 'gst_aggregator_simple_get_next_time'
}

This is a simple get_next_time() implementation that just looks at the Gst.Segment on the srcpad of the aggregator and bases the next time on the running time there.

This is the desired behaviour in most cases where you have a live source and you have a dead line based aggregator subclass.

Parameters:

Returns ( Number ) –

The running time based on the position

Since : 1.16


GstBase.Aggregator.simple_get_next_time

def GstBase.Aggregator.simple_get_next_time (self):
    #python wrapper for 'gst_aggregator_simple_get_next_time'

This is a simple get_next_time() implementation that just looks at the Gst.Segment on the srcpad of the aggregator and bases the next time on the running time there.

This is the desired behaviour in most cases where you have a live source and you have a dead line based aggregator subclass.

Parameters:

Returns ( int ) –

The running time based on the position

Since : 1.16


gst_aggregator_update_segment

gst_aggregator_update_segment (GstAggregator * self,
                               const GstSegment * segment)

Subclasses should use this to update the segment on their source pad, instead of directly pushing new segment events downstream.

Subclasses MUST call this before gst_aggregator_selected_samples, if it is used at all.

Parameters:

self
No description available
segment
No description available

Since : 1.18


GstBase.Aggregator.prototype.update_segment

function GstBase.Aggregator.prototype.update_segment(segment: Gst.Segment): {
    // javascript wrapper for 'gst_aggregator_update_segment'
}

Subclasses should use this to update the segment on their source pad, instead of directly pushing new segment events downstream.

Subclasses MUST call this before GstBase.Aggregator.prototype.selected_samples, if it is used at all.

Parameters:

self ( GstBase.Aggregator ) –
No description available
segment ( Gst.Segment ) –
No description available

Since : 1.18


GstBase.Aggregator.update_segment

def GstBase.Aggregator.update_segment (self, segment):
    #python wrapper for 'gst_aggregator_update_segment'

Subclasses should use this to update the segment on their source pad, instead of directly pushing new segment events downstream.

Subclasses MUST call this before GstBase.Aggregator.selected_samples, if it is used at all.

Parameters:

self ( GstBase.Aggregator ) –
No description available
segment ( Gst.Segment ) –
No description available

Since : 1.18


Signals

samples-selected

samples_selected_callback (GstAggregator * self,
                           GstSegment * segment,
                           guint64 pts,
                           guint64 dts,
                           guint64 duration,
                           GstStructure * info,
                           gpointer user_data)

Signals that the GstAggregator subclass has selected the next set of input samples it will aggregate. Handlers may call gst_aggregator_peek_next_sample at that point.

Parameters:

self
No description available
segment

The GstSegment the next output buffer is part of

pts

The presentation timestamp of the next output buffer

dts

The decoding timestamp of the next output buffer

duration

The duration of the next output buffer

info ( [nullable] ) –

a GstStructure containing additional information

user_data
No description available

Flags: Run First

Since : 1.18


samples-selected

function samples_selected_callback(self: GstBase.Aggregator, segment: Gst.Segment, pts: Number, dts: Number, duration: Number, info: Gst.Structure, user_data: Object): {
    // javascript callback for the 'samples-selected' signal
}

Signals that the GstBase.Aggregator subclass has selected the next set of input samples it will aggregate. Handlers may call GstBase.Aggregator.prototype.peek_next_sample at that point.

Parameters:

self ( GstBase.Aggregator ) –
No description available
segment ( Gst.Segment ) –

The Gst.Segment the next output buffer is part of

pts ( Number ) –

The presentation timestamp of the next output buffer

dts ( Number ) –

The decoding timestamp of the next output buffer

duration ( Number ) –

The duration of the next output buffer

info ( Gst.Structure ) –

a Gst.Structure containing additional information

user_data ( Object ) –
No description available

Flags: Run First

Since : 1.18


samples-selected

def samples_selected_callback (self, segment, pts, dts, duration, info, *user_data):
    #python callback for the 'samples-selected' signal

Signals that the GstBase.Aggregator subclass has selected the next set of input samples it will aggregate. Handlers may call GstBase.Aggregator.peek_next_sample at that point.

Parameters:

self ( GstBase.Aggregator ) –
No description available
segment ( Gst.Segment ) –

The Gst.Segment the next output buffer is part of

pts ( int ) –

The presentation timestamp of the next output buffer

dts ( int ) –

The decoding timestamp of the next output buffer

duration ( int ) –

The duration of the next output buffer

info ( Gst.Structure ) –

a Gst.Structure containing additional information

user_data ( variadic ) –
No description available

Flags: Run First

Since : 1.18


Properties

emit-signals

“emit-signals” gboolean

Enables the emission of signals such as samples-selected

Flags : Read / Write


emit-signals

“emit-signals” Number

Enables the emission of signals such as samples-selected

Flags : Read / Write


emit_signals

“self.props.emit_signals” bool

Enables the emission of signals such as samples-selected

Flags : Read / Write


latency

“latency” guint64

Flags : Read / Write


latency

“latency” Number

Flags : Read / Write


latency

“self.props.latency” int

Flags : Read / Write


min-upstream-latency

“min-upstream-latency” guint64

Force minimum upstream latency (in nanoseconds). When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into account when larger than the actually reported minimum latency.

Flags : Read / Write


min-upstream-latency

“min-upstream-latency” Number

Force minimum upstream latency (in nanoseconds). When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into account when larger than the actually reported minimum latency.

Flags : Read / Write


min_upstream_latency

“self.props.min_upstream_latency” int

Force minimum upstream latency (in nanoseconds). When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into account when larger than the actually reported minimum latency.

Flags : Read / Write


start-time

“start-time” guint64

Flags : Read / Write


start-time

“start-time” Number

Flags : Read / Write


start_time

“self.props.start_time” int

Flags : Read / Write


start-time-selection

“start-time-selection” GstAggregatorStartTimeSelection *

Flags : Read / Write


start-time-selection

“start-time-selection” GstBase.AggregatorStartTimeSelection

Flags : Read / Write


start_time_selection

“self.props.start_time_selection” GstBase.AggregatorStartTimeSelection

Flags : Read / Write


Virtual Methods

aggregate

GstFlowReturn
aggregate (GstAggregator * aggregator,
           gboolean timeout)

Mandatory. Called when buffers are queued on all sinkpads. Classes should iterate the GstElement->sinkpads and peek or steal buffers from the GstAggregatorPad. If the subclass returns GST_FLOW_EOS, sending of the eos event will be taken care of. Once / if a buffer has been constructed from the aggregated buffers, the subclass should call _finish_buffer.

Parameters:

aggregator
No description available
timeout
No description available
Returns
No description available

aggregate

function aggregate(aggregator: GstBase.Aggregator, timeout: Number): {
    // javascript implementation of the 'aggregate' virtual method
}

Mandatory. Called when buffers are queued on all sinkpads. Classes should iterate the GstElement->sinkpads and peek or steal buffers from the GstAggregatorPad. If the subclass returns GST_FLOW_EOS, sending of the eos event will be taken care of. Once / if a buffer has been constructed from the aggregated buffers, the subclass should call _finish_buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
timeout ( Number ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

aggregate

def aggregate (aggregator, timeout):
    #python implementation of the 'aggregate' virtual method

Mandatory. Called when buffers are queued on all sinkpads. Classes should iterate the GstElement->sinkpads and peek or steal buffers from the GstAggregatorPad. If the subclass returns GST_FLOW_EOS, sending of the eos event will be taken care of. Once / if a buffer has been constructed from the aggregated buffers, the subclass should call _finish_buffer.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
timeout ( bool ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

clip

GstBuffer *
clip (GstAggregator * aggregator,
      GstAggregatorPad * aggregator_pad,
      GstBuffer * buf)

Optional. Called when a buffer is received on a sink pad, the task of clipping it and translating it to the current segment falls on the subclass. The function should use the segment of data and the negotiated media type on the pad to perform clipping of input buffer. This function takes ownership of buf and should output a buffer or return NULL in if the buffer should be dropped.

Parameters:

aggregator
No description available
aggregator_pad
No description available
buf
No description available
Returns
No description available

clip

function clip(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad, buf: Gst.Buffer): {
    // javascript implementation of the 'clip' virtual method
}

Optional. Called when a buffer is received on a sink pad, the task of clipping it and translating it to the current segment falls on the subclass. The function should use the segment of data and the negotiated media type on the pad to perform clipping of input buffer. This function takes ownership of buf and should output a buffer or return NULL in if the buffer should be dropped.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
buf ( Gst.Buffer ) –
No description available
Returns ( Gst.Buffer ) –
No description available

clip

def clip (aggregator, aggregator_pad, buf):
    #python implementation of the 'clip' virtual method

Optional. Called when a buffer is received on a sink pad, the task of clipping it and translating it to the current segment falls on the subclass. The function should use the segment of data and the negotiated media type on the pad to perform clipping of input buffer. This function takes ownership of buf and should output a buffer or return NULL in if the buffer should be dropped.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
buf ( Gst.Buffer ) –
No description available
Returns ( Gst.Buffer ) –
No description available

create_new_pad

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

Optional. Called when a new pad needs to be created. Allows subclass that don't have a single sink pad template to provide a pad based on the provided information.

Parameters:

self
No description available
templ
No description available
req_name
No description available
caps
No description available
Returns
No description available

decide_allocation

gboolean
decide_allocation (GstAggregator * self,
                   GstQuery * query)

Optional. Allows the subclass to influence the allocation choices. Setup the allocation parameters for allocating output buffers. The passed in query contains the result of the downstream allocation query.

Parameters:

self
No description available
query
No description available
Returns
No description available

decide_allocation

function decide_allocation(self: GstBase.Aggregator, query: Gst.Query): {
    // javascript implementation of the 'decide_allocation' virtual method
}

Optional. Allows the subclass to influence the allocation choices. Setup the allocation parameters for allocating output buffers. The passed in query contains the result of the downstream allocation query.

Parameters:

self ( GstBase.Aggregator ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( Number ) –
No description available

decide_allocation

def decide_allocation (self, query):
    #python implementation of the 'decide_allocation' virtual method

Optional. Allows the subclass to influence the allocation choices. Setup the allocation parameters for allocating output buffers. The passed in query contains the result of the downstream allocation query.

Parameters:

self ( GstBase.Aggregator ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( bool ) –
No description available

finish_buffer

GstFlowReturn
finish_buffer (GstAggregator * aggregator,
               GstBuffer * buffer)

Optional. Called when a subclass calls gst_aggregator_finish_buffer from their aggregate function to push out a buffer. Subclasses can override this to modify or decorate buffers before they get pushed out. This function takes ownership of the buffer passed. Subclasses that override this method should always chain up to the parent class virtual method.

Parameters:

aggregator
No description available
buffer
No description available
Returns
No description available

finish_buffer

function finish_buffer(aggregator: GstBase.Aggregator, buffer: Gst.Buffer): {
    // javascript implementation of the 'finish_buffer' virtual method
}

Optional. Called when a subclass calls gst_aggregator_finish_buffer from their aggregate function to push out a buffer. Subclasses can override this to modify or decorate buffers before they get pushed out. This function takes ownership of the buffer passed. Subclasses that override this method should always chain up to the parent class virtual method.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
buffer ( Gst.Buffer ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

finish_buffer

def finish_buffer (aggregator, buffer):
    #python implementation of the 'finish_buffer' virtual method

Optional. Called when a subclass calls gst_aggregator_finish_buffer from their aggregate function to push out a buffer. Subclasses can override this to modify or decorate buffers before they get pushed out. This function takes ownership of the buffer passed. Subclasses that override this method should always chain up to the parent class virtual method.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
buffer ( Gst.Buffer ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

finish_buffer_list

GstFlowReturn
finish_buffer_list (GstAggregator * aggregator,
                    GstBufferList * bufferlist)

Optional. Equivalent of finish_buffer for buffer lists.

Parameters:

aggregator
No description available
bufferlist
No description available
Returns
No description available

Since : 1.18


finish_buffer_list

function finish_buffer_list(aggregator: GstBase.Aggregator, bufferlist: Gst.BufferList): {
    // javascript implementation of the 'finish_buffer_list' virtual method
}

Optional. Equivalent of finish_buffer for buffer lists.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
bufferlist ( Gst.BufferList ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

Since : 1.18


finish_buffer_list

def finish_buffer_list (aggregator, bufferlist):
    #python implementation of the 'finish_buffer_list' virtual method

Optional. Equivalent of finish_buffer for buffer lists.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
bufferlist ( Gst.BufferList ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

Since : 1.18


fixate_src_caps

GstCaps *
fixate_src_caps (GstAggregator * self,
                 GstCaps * caps)

Optional. Fixate and return the src pad caps provided. The function takes ownership of caps and returns a fixated version of caps. caps is not guaranteed to be writable.

Parameters:

self
No description available
caps
No description available
Returns
No description available

fixate_src_caps

function fixate_src_caps(self: GstBase.Aggregator, caps: Gst.Caps): {
    // javascript implementation of the 'fixate_src_caps' virtual method
}

Optional. Fixate and return the src pad caps provided. The function takes ownership of caps and returns a fixated version of caps. caps is not guaranteed to be writable.

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available
Returns ( Gst.Caps ) –
No description available

fixate_src_caps

def fixate_src_caps (self, caps):
    #python implementation of the 'fixate_src_caps' virtual method

Optional. Fixate and return the src pad caps provided. The function takes ownership of caps and returns a fixated version of caps. caps is not guaranteed to be writable.

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available
Returns ( Gst.Caps ) –
No description available

flush

GstFlowReturn
flush (GstAggregator * aggregator)

Optional. Called after a successful flushing seek, once all the flush stops have been received. Flush pad-specific data in GstAggregatorPad->flush.

Parameters:

aggregator
No description available
Returns
No description available

flush

function flush(aggregator: GstBase.Aggregator): {
    // javascript implementation of the 'flush' virtual method
}

Optional. Called after a successful flushing seek, once all the flush stops have been received. Flush pad-specific data in GstAggregatorPad->flush.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

flush

def flush (aggregator):
    #python implementation of the 'flush' virtual method

Optional. Called after a successful flushing seek, once all the flush stops have been received. Flush pad-specific data in GstAggregatorPad->flush.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

get_next_time

GstClockTime
get_next_time (GstAggregator * aggregator)

Optional. Called when the element needs to know the running time of the next rendered buffer for live pipelines. This causes deadline based aggregation to occur. Defaults to returning GST_CLOCK_TIME_NONE causing the element to wait for buffers on all sink pads before aggregating.

Parameters:

aggregator
No description available
Returns
No description available

get_next_time

function get_next_time(aggregator: GstBase.Aggregator): {
    // javascript implementation of the 'get_next_time' virtual method
}

Optional. Called when the element needs to know the running time of the next rendered buffer for live pipelines. This causes deadline based aggregation to occur. Defaults to returning GST_CLOCK_TIME_NONE causing the element to wait for buffers on all sink pads before aggregating.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Number ) –
No description available

get_next_time

def get_next_time (aggregator):
    #python implementation of the 'get_next_time' virtual method

Optional. Called when the element needs to know the running time of the next rendered buffer for live pipelines. This causes deadline based aggregation to occur. Defaults to returning GST_CLOCK_TIME_NONE causing the element to wait for buffers on all sink pads before aggregating.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( int ) –
No description available

negotiate

gboolean
negotiate (GstAggregator * self)

Optional. Negotiate the caps with the peer (Since: 1.18).

Parameters:

self
No description available
Returns
No description available

negotiate

function negotiate(self: GstBase.Aggregator): {
    // javascript implementation of the 'negotiate' virtual method
}

Optional. Negotiate the caps with the peer (Since: 1.18).

Parameters:

self ( GstBase.Aggregator ) –
No description available
Returns ( Number ) –
No description available

negotiate

def negotiate (self):
    #python implementation of the 'negotiate' virtual method

Optional. Negotiate the caps with the peer (Since: 1.18).

Parameters:

self ( GstBase.Aggregator ) –
No description available
Returns ( bool ) –
No description available

negotiated_src_caps

gboolean
negotiated_src_caps (GstAggregator * self,
                     GstCaps * caps)

Optional. Notifies subclasses what caps format has been negotiated

Parameters:

self
No description available
caps
No description available
Returns
No description available

negotiated_src_caps

function negotiated_src_caps(self: GstBase.Aggregator, caps: Gst.Caps): {
    // javascript implementation of the 'negotiated_src_caps' virtual method
}

Optional. Notifies subclasses what caps format has been negotiated

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available
Returns ( Number ) –
No description available

negotiated_src_caps

def negotiated_src_caps (self, caps):
    #python implementation of the 'negotiated_src_caps' virtual method

Optional. Notifies subclasses what caps format has been negotiated

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available
Returns ( bool ) –
No description available

peek_next_sample

GstSample *
peek_next_sample (GstAggregator * aggregator,
                  GstAggregatorPad * aggregator_pad)

See gst_aggregator_peek_next_sample.

Parameters:

aggregator
No description available
aggregator_pad
No description available
Returns
No description available

Since : 1.18


peek_next_sample

function peek_next_sample(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad): {
    // javascript implementation of the 'peek_next_sample' virtual method
}

See gst_aggregator_peek_next_sample.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
Returns ( Gst.Sample ) –
No description available

Since : 1.18


peek_next_sample

def peek_next_sample (aggregator, aggregator_pad):
    #python implementation of the 'peek_next_sample' virtual method

See gst_aggregator_peek_next_sample.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
Returns ( Gst.Sample ) –
No description available

Since : 1.18


propose_allocation

gboolean
propose_allocation (GstAggregator * self,
                    GstAggregatorPad * pad,
                    GstQuery * decide_query,
                    GstQuery * query)

Optional. Allows the subclass to handle the allocation query from upstream.

Parameters:

self
No description available
pad
No description available
decide_query
No description available
query
No description available
Returns
No description available

propose_allocation

function propose_allocation(self: GstBase.Aggregator, pad: GstBase.AggregatorPad, decide_query: Gst.Query, query: Gst.Query): {
    // javascript implementation of the 'propose_allocation' virtual method
}

Optional. Allows the subclass to handle the allocation query from upstream.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pad ( GstBase.AggregatorPad ) –
No description available
decide_query ( Gst.Query ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( Number ) –
No description available

propose_allocation

def propose_allocation (self, pad, decide_query, query):
    #python implementation of the 'propose_allocation' virtual method

Optional. Allows the subclass to handle the allocation query from upstream.

Parameters:

self ( GstBase.Aggregator ) –
No description available
pad ( GstBase.AggregatorPad ) –
No description available
decide_query ( Gst.Query ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( bool ) –
No description available

sink_event

gboolean
sink_event (GstAggregator * aggregator,
            GstAggregatorPad * aggregator_pad,
            GstEvent * event)

Optional. Called when an event is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator
No description available
aggregator_pad
No description available
event
No description available
Returns
No description available

sink_event

function sink_event(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad, event: Gst.Event): {
    // javascript implementation of the 'sink_event' virtual method
}

Optional. Called when an event is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( Number ) –
No description available

sink_event

def sink_event (aggregator, aggregator_pad, event):
    #python implementation of the 'sink_event' virtual method

Optional. Called when an event is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( bool ) –
No description available

sink_event_pre_queue

GstFlowReturn
sink_event_pre_queue (GstAggregator * aggregator,
                      GstAggregatorPad * aggregator_pad,
                      GstEvent * event)

Optional. Called when an event is received on a sink pad before queueing up serialized events. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator
No description available
aggregator_pad
No description available
event
No description available
Returns
No description available

sink_event_pre_queue

function sink_event_pre_queue(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad, event: Gst.Event): {
    // javascript implementation of the 'sink_event_pre_queue' virtual method
}

Optional. Called when an event is received on a sink pad before queueing up serialized events. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

sink_event_pre_queue

def sink_event_pre_queue (aggregator, aggregator_pad, event):
    #python implementation of the 'sink_event_pre_queue' virtual method

Optional. Called when an event is received on a sink pad before queueing up serialized events. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

sink_query

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

Optional. Called when a query is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator
No description available
aggregator_pad
No description available
query
No description available
Returns
No description available

sink_query

function sink_query(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad, query: Gst.Query): {
    // javascript implementation of the 'sink_query' virtual method
}

Optional. Called when a query is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( Number ) –
No description available

sink_query

def sink_query (aggregator, aggregator_pad, query):
    #python implementation of the 'sink_query' virtual method

Optional. Called when a query is received on a sink pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( bool ) –
No description available

sink_query_pre_queue

gboolean
sink_query_pre_queue (GstAggregator * aggregator,
                      GstAggregatorPad * aggregator_pad,
                      GstQuery * query)

Optional. Called when a query is received on a sink pad before queueing up serialized queries. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator
No description available
aggregator_pad
No description available
query
No description available
Returns
No description available

sink_query_pre_queue

function sink_query_pre_queue(aggregator: GstBase.Aggregator, aggregator_pad: GstBase.AggregatorPad, query: Gst.Query): {
    // javascript implementation of the 'sink_query_pre_queue' virtual method
}

Optional. Called when a query is received on a sink pad before queueing up serialized queries. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( Number ) –
No description available

sink_query_pre_queue

def sink_query_pre_queue (aggregator, aggregator_pad, query):
    #python implementation of the 'sink_query_pre_queue' virtual method

Optional. Called when a query is received on a sink pad before queueing up serialized queries. The subclass should always chain up (Since: 1.18).

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
aggregator_pad ( GstBase.AggregatorPad ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( bool ) –
No description available

src_activate

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

Optional. Called when the src pad is activated, it will start/stop its pad task right after that call.

Parameters:

aggregator
No description available
mode
No description available
active
No description available
Returns
No description available

src_activate

function src_activate(aggregator: GstBase.Aggregator, mode: Gst.PadMode, active: Number): {
    // javascript implementation of the 'src_activate' virtual method
}

Optional. Called when the src pad is activated, it will start/stop its pad task right after that call.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
mode ( Gst.PadMode ) –
No description available
active ( Number ) –
No description available
Returns ( Number ) –
No description available

src_activate

def src_activate (aggregator, mode, active):
    #python implementation of the 'src_activate' virtual method

Optional. Called when the src pad is activated, it will start/stop its pad task right after that call.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
mode ( Gst.PadMode ) –
No description available
active ( bool ) –
No description available
Returns ( bool ) –
No description available

src_event

gboolean
src_event (GstAggregator * aggregator,
           GstEvent * event)

Optional. Called when an event is received on the src pad, the subclass should always chain up.

Parameters:

aggregator
No description available
event
No description available
Returns
No description available

src_event

function src_event(aggregator: GstBase.Aggregator, event: Gst.Event): {
    // javascript implementation of the 'src_event' virtual method
}

Optional. Called when an event is received on the src pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( Number ) –
No description available

src_event

def src_event (aggregator, event):
    #python implementation of the 'src_event' virtual method

Optional. Called when an event is received on the src pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
event ( Gst.Event ) –
No description available
Returns ( bool ) –
No description available

src_query

gboolean
src_query (GstAggregator * aggregator,
           GstQuery * query)

Optional. Called when a query is received on the src pad, the subclass should always chain up.

Parameters:

aggregator
No description available
query
No description available
Returns
No description available

src_query

function src_query(aggregator: GstBase.Aggregator, query: Gst.Query): {
    // javascript implementation of the 'src_query' virtual method
}

Optional. Called when a query is received on the src pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( Number ) –
No description available

src_query

def src_query (aggregator, query):
    #python implementation of the 'src_query' virtual method

Optional. Called when a query is received on the src pad, the subclass should always chain up.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
query ( Gst.Query ) –
No description available
Returns ( bool ) –
No description available

start

gboolean
start (GstAggregator * aggregator)

Optional. Called when the element goes from READY to PAUSED. The subclass should get ready to process aggregated buffers.

Parameters:

aggregator
No description available
Returns
No description available

start

function start(aggregator: GstBase.Aggregator): {
    // javascript implementation of the 'start' virtual method
}

Optional. Called when the element goes from READY to PAUSED. The subclass should get ready to process aggregated buffers.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Number ) –
No description available

start

def start (aggregator):
    #python implementation of the 'start' virtual method

Optional. Called when the element goes from READY to PAUSED. The subclass should get ready to process aggregated buffers.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( bool ) –
No description available

stop

gboolean
stop (GstAggregator * aggregator)

Optional. Called when the element goes from PAUSED to READY. The subclass should free all resources and reset its state.

Parameters:

aggregator
No description available
Returns
No description available

stop

function stop(aggregator: GstBase.Aggregator): {
    // javascript implementation of the 'stop' virtual method
}

Optional. Called when the element goes from PAUSED to READY. The subclass should free all resources and reset its state.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Number ) –
No description available

stop

def stop (aggregator):
    #python implementation of the 'stop' virtual method

Optional. Called when the element goes from PAUSED to READY. The subclass should free all resources and reset its state.

Parameters:

aggregator ( GstBase.Aggregator ) –
No description available
Returns ( bool ) –
No description available

update_src_caps

GstFlowReturn
update_src_caps (GstAggregator * self,
                 GstCaps * caps,
                 GstCaps ** ret)

Lets subclasses update the GstCaps representing the src pad caps before usage. The result should end up in ret. Return GST_AGGREGATOR_FLOW_NEED_DATA to indicate that the element needs more information (caps, a buffer, etc) to choose the correct caps. Should return ANY caps if the stream has not caps at all.

Parameters:

self
No description available
caps
No description available
ret
No description available
Returns
No description available

update_src_caps

function update_src_caps(self: GstBase.Aggregator, caps: Gst.Caps): {
    // javascript implementation of the 'update_src_caps' virtual method
}

Lets subclasses update the GstCaps representing the src pad caps before usage. The result should end up in ret. Return GST_AGGREGATOR_FLOW_NEED_DATA to indicate that the element needs more information (caps, a buffer, etc) to choose the correct caps. Should return ANY caps if the stream has not caps at all.

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available

Returns a tuple made of:

( Gst.FlowReturn ) –
No description available
ret ( Gst.Caps ) –
No description available

update_src_caps

def update_src_caps (self, caps):
    #python implementation of the 'update_src_caps' virtual method

Lets subclasses update the GstCaps representing the src pad caps before usage. The result should end up in ret. Return GST_AGGREGATOR_FLOW_NEED_DATA to indicate that the element needs more information (caps, a buffer, etc) to choose the correct caps. Should return ANY caps if the stream has not caps at all.

Parameters:

self ( GstBase.Aggregator ) –
No description available
caps ( Gst.Caps ) –
No description available

Returns a tuple made of:

( Gst.FlowReturn ) –
No description available
ret ( Gst.Caps ) –
No description available

GstAggregatorPad

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstPad
                ╰──GstAggregatorPad

The implementation the GstPad to use with GstAggregator

Members

parent (GstPad) –
No description available
segment (GstSegment) –

last segment received.


Class structure

GstAggregatorPadClass

Fields
parent_class (GstPadClass) –
No description available

GstBase.AggregatorPadClass

Attributes
parent_class (Gst.PadClass) –
No description available

GstBase.AggregatorPadClass

Attributes
parent_class (Gst.PadClass) –
No description available

GstAggregatorPad

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstPad
                ╰──GstAggregatorPad

The implementation the GstPad to use with GstAggregator

Members

parent (GstPad) –
No description available
segment (GstSegment) –

last segment received.


GstAggregatorPad

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstPad
                ╰──GstAggregatorPad

The implementation the GstPad to use with GstAggregator

Members

parent (GstPad) –
No description available
segment (GstSegment) –

last segment received.


Methods

gst_aggregator_pad_drop_buffer

gboolean
gst_aggregator_pad_drop_buffer (GstAggregatorPad * pad)

Drop the buffer currently queued in pad.

Parameters:

pad

the pad where to drop any pending buffer

Returns

TRUE if there was a buffer queued in pad, or FALSE if not.


GstBase.AggregatorPad.prototype.drop_buffer

function GstBase.AggregatorPad.prototype.drop_buffer(): {
    // javascript wrapper for 'gst_aggregator_pad_drop_buffer'
}

Drop the buffer currently queued in pad.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad where to drop any pending buffer

Returns ( Number ) –

TRUE if there was a buffer queued in pad, or FALSE if not.


GstBase.AggregatorPad.drop_buffer

def GstBase.AggregatorPad.drop_buffer (self):
    #python wrapper for 'gst_aggregator_pad_drop_buffer'

Drop the buffer currently queued in pad.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad where to drop any pending buffer

Returns ( bool ) –

TRUE if there was a buffer queued in pad, or FALSE if not.


gst_aggregator_pad_has_buffer

gboolean
gst_aggregator_pad_has_buffer (GstAggregatorPad * pad)

This checks if a pad has a buffer available that will be returned by a call to gst_aggregator_pad_peek_buffer or gst_aggregator_pad_pop_buffer.

Parameters:

pad

the pad to check the buffer on

Returns

TRUE if the pad has a buffer available as the next thing.

Since : 1.14.1


GstBase.AggregatorPad.prototype.has_buffer

function GstBase.AggregatorPad.prototype.has_buffer(): {
    // javascript wrapper for 'gst_aggregator_pad_has_buffer'
}

This checks if a pad has a buffer available that will be returned by a call to GstBase.AggregatorPad.prototype.peek_buffer or GstBase.AggregatorPad.prototype.pop_buffer.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to check the buffer on

Returns ( Number ) –

true if the pad has a buffer available as the next thing.

Since : 1.14.1


GstBase.AggregatorPad.has_buffer

def GstBase.AggregatorPad.has_buffer (self):
    #python wrapper for 'gst_aggregator_pad_has_buffer'

This checks if a pad has a buffer available that will be returned by a call to GstBase.AggregatorPad.peek_buffer or GstBase.AggregatorPad.pop_buffer.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to check the buffer on

Returns ( bool ) –

True if the pad has a buffer available as the next thing.

Since : 1.14.1


gst_aggregator_pad_is_eos

gboolean
gst_aggregator_pad_is_eos (GstAggregatorPad * pad)

Parameters:

pad

an aggregator pad

Returns

TRUE if the pad is EOS, otherwise FALSE.


GstBase.AggregatorPad.prototype.is_eos

function GstBase.AggregatorPad.prototype.is_eos(): {
    // javascript wrapper for 'gst_aggregator_pad_is_eos'
}

Parameters:

pad ( GstBase.AggregatorPad ) –

an aggregator pad

Returns ( Number ) –

true if the pad is EOS, otherwise false.


GstBase.AggregatorPad.is_eos

def GstBase.AggregatorPad.is_eos (self):
    #python wrapper for 'gst_aggregator_pad_is_eos'

Parameters:

pad ( GstBase.AggregatorPad ) –

an aggregator pad

Returns ( bool ) –

True if the pad is EOS, otherwise False.


gst_aggregator_pad_peek_buffer

GstBuffer *
gst_aggregator_pad_peek_buffer (GstAggregatorPad * pad)

Parameters:

pad

the pad to get buffer from

Returns ( [transfer: full] ) –

A reference to the buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


GstBase.AggregatorPad.prototype.peek_buffer

function GstBase.AggregatorPad.prototype.peek_buffer(): {
    // javascript wrapper for 'gst_aggregator_pad_peek_buffer'
}

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to get buffer from

Returns ( Gst.Buffer ) –

A reference to the buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


GstBase.AggregatorPad.peek_buffer

def GstBase.AggregatorPad.peek_buffer (self):
    #python wrapper for 'gst_aggregator_pad_peek_buffer'

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to get buffer from

Returns ( Gst.Buffer ) –

A reference to the buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


gst_aggregator_pad_pop_buffer

GstBuffer *
gst_aggregator_pad_pop_buffer (GstAggregatorPad * pad)

Steal the ref to the buffer currently queued in pad.

Parameters:

pad

the pad to get buffer from

Returns ( [transfer: full] ) –

The buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


GstBase.AggregatorPad.prototype.pop_buffer

function GstBase.AggregatorPad.prototype.pop_buffer(): {
    // javascript wrapper for 'gst_aggregator_pad_pop_buffer'
}

Steal the ref to the buffer currently queued in pad.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to get buffer from

Returns ( Gst.Buffer ) –

The buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


GstBase.AggregatorPad.pop_buffer

def GstBase.AggregatorPad.pop_buffer (self):
    #python wrapper for 'gst_aggregator_pad_pop_buffer'

Steal the ref to the buffer currently queued in pad.

Parameters:

pad ( GstBase.AggregatorPad ) –

the pad to get buffer from

Returns ( Gst.Buffer ) –

The buffer in pad or NULL if no buffer was queued. You should unref the buffer after usage.


Signals

buffer-consumed

buffer_consumed_callback (GstAggregatorPad * self,
                          GstBuffer * object,
                          gpointer user_data)

Parameters:

self
No description available
object
No description available
user_data
No description available

Flags: Run First


buffer-consumed

function buffer_consumed_callback(self: GstBase.AggregatorPad, object: Gst.Buffer, user_data: Object): {
    // javascript callback for the 'buffer-consumed' signal
}

Parameters:

self ( GstBase.AggregatorPad ) –
No description available
object ( Gst.Buffer ) –
No description available
user_data ( Object ) –
No description available

Flags: Run First


buffer-consumed

def buffer_consumed_callback (self, object, *user_data):
    #python callback for the 'buffer-consumed' signal

Parameters:

self ( GstBase.AggregatorPad ) –
No description available
object ( Gst.Buffer ) –
No description available
user_data ( variadic ) –
No description available

Flags: Run First


Properties

emit-signals

“emit-signals” gboolean

Enables the emission of signals such as buffer-consumed

Flags : Read / Write


emit-signals

“emit-signals” Number

Enables the emission of signals such as buffer-consumed

Flags : Read / Write


emit_signals

“self.props.emit_signals” bool

Enables the emission of signals such as buffer-consumed

Flags : Read / Write


Virtual Methods

flush

GstFlowReturn
flush (GstAggregatorPad * aggpad,
       GstAggregator * aggregator)

Optional Called when the pad has received a flush stop, this is the place to flush any information specific to the pad, it allows for individual pads to be flushed while others might not be.

Parameters:

aggpad
No description available
aggregator
No description available
Returns
No description available

flush

function flush(aggpad: GstBase.AggregatorPad, aggregator: GstBase.Aggregator): {
    // javascript implementation of the 'flush' virtual method
}

Optional Called when the pad has received a flush stop, this is the place to flush any information specific to the pad, it allows for individual pads to be flushed while others might not be.

Parameters:

aggpad ( GstBase.AggregatorPad ) –
No description available
aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

flush

def flush (aggpad, aggregator):
    #python implementation of the 'flush' virtual method

Optional Called when the pad has received a flush stop, this is the place to flush any information specific to the pad, it allows for individual pads to be flushed while others might not be.

Parameters:

aggpad ( GstBase.AggregatorPad ) –
No description available
aggregator ( GstBase.Aggregator ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

skip_buffer

gboolean
skip_buffer (GstAggregatorPad * aggpad,
             GstAggregator * aggregator,
             GstBuffer * buffer)

Optional Called before input buffers are queued in the pad, return TRUE if the buffer should be skipped.

Parameters:

aggpad
No description available
aggregator
No description available
buffer
No description available
Returns
No description available

skip_buffer

function skip_buffer(aggpad: GstBase.AggregatorPad, aggregator: GstBase.Aggregator, buffer: Gst.Buffer): {
    // javascript implementation of the 'skip_buffer' virtual method
}

Optional Called before input buffers are queued in the pad, return TRUE if the buffer should be skipped.

Parameters:

aggpad ( GstBase.AggregatorPad ) –
No description available
aggregator ( GstBase.Aggregator ) –
No description available
buffer ( Gst.Buffer ) –
No description available
Returns ( Number ) –
No description available

skip_buffer

def skip_buffer (aggpad, aggregator, buffer):
    #python implementation of the 'skip_buffer' virtual method

Optional Called before input buffers are queued in the pad, return TRUE if the buffer should be skipped.

Parameters:

aggpad ( GstBase.AggregatorPad ) –
No description available
aggregator ( GstBase.Aggregator ) –
No description available
buffer ( Gst.Buffer ) –
No description available
Returns ( bool ) –
No description available

Function Macros

GST_AGGREGATOR_CAST

#define GST_AGGREGATOR_CAST(obj)       ((GstAggregator *)(obj))

GST_AGGREGATOR_PAD_CAST

#define GST_AGGREGATOR_PAD_CAST(obj)       ((GstAggregatorPad *)(obj))

GST_AGGREGATOR_SRC_PAD

#define GST_AGGREGATOR_SRC_PAD(agg) (((GstAggregator *)(agg))->srcpad)

Convenience macro to access the source pad of GstAggregator

Parameters:

agg

a GstAggregator


Enumerations

GstAggregatorStartTimeSelection

Members
GST_AGGREGATOR_START_TIME_SELECTION_ZERO (0) –

Start at running time 0.

GST_AGGREGATOR_START_TIME_SELECTION_FIRST (1) –

Start at the running time of the first buffer that is received.

GST_AGGREGATOR_START_TIME_SELECTION_SET (2) –

Start at the running time selected by the start-time property.


GstBase.AggregatorStartTimeSelection

Members
GstBase.AggregatorStartTimeSelection.ZERO (0) –

Start at running time 0.

GstBase.AggregatorStartTimeSelection.FIRST (1) –

Start at the running time of the first buffer that is received.

GstBase.AggregatorStartTimeSelection.SET (2) –

Start at the running time selected by the start-time property.


GstBase.AggregatorStartTimeSelection

Members
GstBase.AggregatorStartTimeSelection.ZERO (0) –

Start at running time 0.

GstBase.AggregatorStartTimeSelection.FIRST (1) –

Start at the running time of the first buffer that is received.

GstBase.AggregatorStartTimeSelection.SET (2) –

Start at the running time selected by the start-time property.


Constants

GST_AGGREGATOR_FLOW_NEED_DATA

#define GST_AGGREGATOR_FLOW_NEED_DATA             GST_FLOW_CUSTOM_ERROR

The results of the search are