The GstMeta 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 gst_meta_api_type_register() which takes a name for the metadata API and some tags associated with the metadata. With gst_meta_api_type_has_tag() 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, gst_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 gst_meta_get_info().

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


Static functions

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

Check if api was registered with tag.

GType apiTypeRegister(string api, string[] tags)

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

GstMetaInfo* getInfo(string impl)

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

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

Register a new GstMeta implementation.