[][src]Crate gstreamer_base

Re-exports

pub use functions::*;

Modules

functions
functions
prelude
subclass

Structs

Adapter

This class is for elements that receive buffers in an undesired size. While for example raw video contains one image per buffer, the same is not true for a lot of other formats, especially those that come directly from a file. So if you have undefined buffer sizes and require a specific size, this object is for you.

AdapterClass
Aggregator

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

AggregatorClass
AggregatorPad

Pads managed by a GstAggregor subclass.

AggregatorPadClass
BaseSink

BaseSink is the base class for sink elements in GStreamer, such as xvimagesink or filesink. It is a layer on top of gst::Element that provides a simplified interface to plugin writers. BaseSink handles many details for you, for example: preroll, clock synchronization, state changes, activation in push or pull mode, and queries.

BaseSinkClass
BaseSrc

This is a generic base class for source elements. The following types of sources are supported:

BaseSrcClass
BaseTransform

This base class is for filter elements that process data. Elements that are suitable for implementation using BaseTransform are ones where the size and caps of the output is known entirely from the input caps and buffer sizes. These include elements that directly transform one buffer into another, modify the contents of a buffer in-place, as well as elements that collate multiple input buffers into one output buffer, or that expand one input buffer into multiple output buffers. See below for more concrete use cases.

BaseTransformClass
Continue

Continue calling the closure in the future iterations or drop it.

Error

A generic error capable of representing various error domains (types).

FlowCombiner

Utility struct to help handling gst::FlowReturn combination. Useful for gst::Elements that have multiple source pads and need to combine the different gst::FlowReturn for those pads.

PushSrc

This class is mostly useful for elements that cannot do random access, or at least very slowly. The source usually prefers to push out a fixed size buffer.

PushSrcClass
TypedValue

A statically typed Value.

UniqueAdapter
UniqueAdapterMap
UniqueFlowCombiner
Value

A generic value capable of carrying various types.

Enums

Type

A GLib or GLib-based library type

Constants

NONE_AGGREGATOR
NONE_AGGREGATOR_PAD
NONE_BASE_SINK
NONE_BASE_SRC
NONE_BASE_TRANSFORM
NONE_PUSH_SRC

Traits

AggregatorExt

Trait containing all Aggregator methods.

AggregatorPadExt

Trait containing all AggregatorPad methods.

BaseSinkExt

Trait containing all BaseSink methods.

BaseSrcExt

Trait containing all BaseSrc methods.

BaseTransformExt

Trait containing all BaseTransform methods.

Cast

Upcasting and downcasting support.

IsA

Declares the "is a" relationship.

StaticType

Types that are supported by GLib dynamic typing.

ToValue

Converts to Value.

Functions

type_find_helper
type_find_helper_for_buffer
type_find_helper_for_extension