TagList.register

Registers a new tag type for the use with GStreamer's type system. If a type with that name is already registered, that one is used. The old registration may have used a different type however. So don't rely on your supplied values.

Important: if you do not supply a merge function the implication will be that there can only be one single value for this tag in a tag list and any additional values will silently be discarded when being added (unless #GST_TAG_MERGE_REPLACE, #GST_TAG_MERGE_REPLACE_ALL, or #GST_TAG_MERGE_PREPEND is used as merge mode, in which case the new value will replace the old one in the list).

The merge function will be called from gst_tag_list_copy_value() when it is required that one or more values for a tag be condensed into one single value. This may happen from gst_tag_list_get_string(), gst_tag_list_get_int(), gst_tag_list_get_double() etc. What will happen exactly in that case depends on how the tag was registered and if a merge function was supplied and if so which one.

Two default merge functions are provided: gst_tag_merge_use_first() and gst_tag_merge_strings_with_comma().

class TagList
static
void
register

Parameters

name string

the name or identifier string

flag GstTagFlag

a flag describing the type of tag info

type GType

the type this data is in

nick string

human-readable name

blurb string

a human-readable description about this tag

func GstTagMergeFunc

function for merging multiple values of this tag, or %NULL

Meta