Meta

The gstreamer.Meta structure should be included as the first member of a gstreamer.Buffer metadata structure. The structure defines the API of the metadata and should be accessible to all elements using the metadata.

A metadata API is registered with Meta.apiTypeRegister which takes a name for the metadata API and some tags associated with the metadata. With Meta.apiTypeHasTag one can check if a certain metadata API contains a given tag.

Multiple implementations of a metadata API can be registered. To implement a metadata API, Meta.register should be used. This function takes all parameters needed to create, free and transform metadata along with the size of the metadata. The function returns a GstMetaInfo structure that contains the information for the implementation of the API.

A specific implementation can be retrieved by name with Meta.getInfo.

See gstreamer.Buffer for how the metadata can be added, retrieved and removed from buffers.

Constructors

this
this(GstMeta* gstMeta, bool ownedRef)

Sets our main struct and passes it to the parent class.

Destructor

A destructor is present on this object, but not explicitly documented in the source.

Members

Functions

compareSeqnum
int compareSeqnum(Meta meta2)

Meta sequence number compare function. Can be used as GCompareFunc or a GCompareDataFunc

getMetaStruct
GstMeta* getMetaStruct(bool transferOwnership)

Get the main Gtk struct

getSeqnum
ulong getSeqnum()

Gets seqnum for this meta.

getStruct
void* getStruct()

the main Gtk struct as a void*

Properties

flags
GstMetaFlags flags [@property getter]
GstMetaFlags flags [@property setter]

extra flags for the metadata

info
GstMetaInfo* info [@property getter]
GstMetaInfo* info [@property setter]

pointer to the GstMetaInfo

Static functions

apiTypeGetTags
string[] apiTypeGetTags(GType api)
apiTypeHasTag
bool apiTypeHasTag(GType api, GQuark tag)

Check if api was registered with tag.

apiTypeRegister
GType apiTypeRegister(string api, string[] tags)

Register and return a GType for the api and associate it with tags.

getInfo
GstMetaInfo* getInfo(string impl)

Lookup a previously registered meta info structure by its implementation name impl.

register
GstMetaInfo* register(GType api, string impl, size_t size, GstMetaInitFunction initFunc, GstMetaFreeFunction freeFunc, GstMetaTransformFunction transformFunc)

Register a new gstreamer.Meta implementation.

Variables

gstMeta
GstMeta* gstMeta;

the main Gtk struct