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;
}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]
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
fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>[src]
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]
fn simple_get_next_time(&self) -> ClockTime[src]
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]
v1_18 only.fn set_emit_signals(&self, emit_signals: bool)[src]
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]
v1_18 only.fn set_start_time_selection(
&self,
start_time_selection: AggregatorStartTimeSelection
)[src]
&self,
start_time_selection: AggregatorStartTimeSelection
)
v1_18 only.fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
v1_18 only.fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
v1_14 only.fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
v1_18 only.Implementors
impl<O: IsA<Aggregator>> AggregatorExt for O[src]
impl<O: IsA<Aggregator>> AggregatorExt for O[src]v1_14 only.fn buffer_pool(&self) -> Option<BufferPool>[src]
fn latency(&self) -> ClockTime[src]
fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>[src]
fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<Sample>[src]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]
fn simple_get_next_time(&self) -> ClockTime[src]v1_16 only.fn emits_signals(&self) -> bool[src]
fn emits_signals(&self) -> bool[src]v1_18 only.fn set_emit_signals(&self, emit_signals: bool)[src]
fn set_emit_signals(&self, emit_signals: bool)[src]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]
fn start_time_selection(&self) -> AggregatorStartTimeSelection[src]v1_18 only.fn set_start_time_selection(
&self,
start_time_selection: AggregatorStartTimeSelection
)[src]
fn set_start_time_selection(
&self,
start_time_selection: AggregatorStartTimeSelection
)[src]v1_18 only.fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]v1_18 only.fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId[src]
&self,
f: F
) -> SignalHandlerId
fn connect_start_time_selection_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]v1_18 only.