[ CCode ( cname = "gst_tag_register" ) ]
public void register (string name, TagFlag flag, Type type, string nick, string blurb, TagMergeFunc? func)

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 REPLACE, REPLACE_ALL, or 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 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 get_string, get_int, 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: merge_use_first and merge_strings_with_comma.



the name or identifier string


a flag describing the type of tag info


the type this data is in


human-readable name


a human-readable description about this tag


function for merging multiple values of this tag, or null

Namespace: Gst.Tags
Package: gstreamer-1.0