Trait gstreamer_base::prelude::AggregatorExt[][src]

pub trait AggregatorExt: 'static {
Show methods fn buffer_pool(&self) -> Option<BufferPool>;
fn latency(&self) -> ClockTime;
fn negotiate(&self) -> bool;
fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>;
fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime);
fn set_src_caps(&self, caps: &Caps);
fn simple_get_next_time(&self) -> ClockTime;
fn emits_signals(&self) -> bool;
fn set_emit_signals(&self, emit_signals: bool);
fn start_time(&self) -> u64;
fn set_start_time(&self, start_time: u64);
fn start_time_selection(&self) -> AggregatorStartTimeSelection;
fn set_start_time_selection(
        &self,
        start_time_selection: AggregatorStartTimeSelection
    );
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}

Trait containing all Aggregator methods.

Implementors

crate::Aggregator

Required methods

fn buffer_pool(&self) -> Option<BufferPool>[src]

Returns

the instance of the crate::gst::BufferPool used by trans; free it after use it

fn latency(&self) -> ClockTime[src]

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.

Returns

The latency or GST_CLOCK_TIME_NONE if the element does not sync

fn negotiate(&self) -> bool[src]

This is supported on crate feature v1_18 only.

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

Returns

true if the negotiation succeeded, else false.

fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>[src]

This is supported on crate feature v1_18 only.

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

Returns

The sample that is about to be aggregated. It may hold a crate::gst::Buffer or a crate::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.

fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime)[src]

Lets crate::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.

min_latency

minimum latency

max_latency

maximum latency

fn set_src_caps(&self, caps: &Caps)[src]

Sets the caps to be used on the src pad.

caps

The crate::gst::Caps to set on the src pad.

fn simple_get_next_time(&self) -> ClockTime[src]

This is supported on crate feature v1_16 only.

This is a simple [crate::GstAggregatorClass.get_next_time()] implementation that just looks at the crate::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.

Returns

The running time based on the position

fn emits_signals(&self) -> bool[src]

This is supported on crate feature v1_18 only.

fn set_emit_signals(&self, emit_signals: bool)[src]

This is supported on crate feature v1_18 only.

fn start_time(&self) -> u64[src]

fn set_start_time(&self, start_time: u64)[src]

fn start_time_selection(&self) -> AggregatorStartTimeSelection[src]

This is supported on crate feature v1_18 only.

fn set_start_time_selection(
    &self,
    start_time_selection: AggregatorStartTimeSelection
)
[src]

This is supported on crate feature v1_18 only.

fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

This is supported on crate feature v1_18 only.

fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

This is supported on crate feature v1_14 only.

fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

This is supported on crate feature v1_18 only.
Loading content...

Implementors

impl<O: IsA<Aggregator>> AggregatorExt for O[src]

This is supported on crate feature v1_14 only.

fn buffer_pool(&self) -> Option<BufferPool>[src]

fn latency(&self) -> ClockTime[src]

fn negotiate(&self) -> bool[src]

This is supported on crate feature v1_18 only.

fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>[src]

This is supported on crate feature v1_18 only.

fn set_latency(&self, min_latency: ClockTime, max_latency: ClockTime)[src]

fn set_src_caps(&self, caps: &Caps)[src]

fn simple_get_next_time(&self) -> ClockTime[src]

This is supported on crate feature v1_16 only.

fn emits_signals(&self) -> bool[src]

This is supported on crate feature v1_18 only.

fn set_emit_signals(&self, emit_signals: bool)[src]

This is supported on crate feature v1_18 only.

fn start_time(&self) -> u64[src]

fn set_start_time(&self, start_time: u64)[src]

fn start_time_selection(&self) -> AggregatorStartTimeSelection[src]

This is supported on crate feature v1_18 only.

fn set_start_time_selection(
    &self,
    start_time_selection: AggregatorStartTimeSelection
)
[src]

This is supported on crate feature v1_18 only.

fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

This is supported on crate feature v1_18 only.

fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

This is supported on crate feature v1_18 only.
Loading content...