## gsttagxmpwriter gsttagxmpwriter — Interface for elements that provide XMP serialization |

## Functions

void | gst_tag_xmp_writer_add_all_schemas ()
void | gst_tag_xmp_writer_add_schema ()
gboolean | gst_tag_xmp_writer_has_schema ()
void | gst_tag_xmp_writer_remove_schema ()
void | gst_tag_xmp_writer_remove_all_schemas ()
GstBuffer * | gst_tag_xmp_writer_tag_list_to_xmp_buffer ()

## Object Hierarchy

## Description

This interface is implemented by elements that are able to do XMP serialization. Examples for such elements are jifmux and qtmux.

Applications can use this interface to configure which XMP schemas should be used when serializing tags into XMP. Schemas are represented by their names, a full list of the supported schemas can be obtained from `gst_tag_xmp_list_schemas()`. By default, all schemas are used.

## Functions

### gst_tag_xmp_writer_add_all_schemas ()

    void
    gst_tag_xmp_writer_add_all_schemas (GstTagXmpWriter *config);

Adds all available XMP schemas to the configuration. Meaning that all will be used.

#### Parameters

config | a GstTagXmpWriter |

### gst_tag_xmp_writer_add_schema ()

    void
    gst_tag_xmp_writer_add_schema (GstTagXmpWriter *config,
                                   const gchar *schema);

Adds `schema` to the list schemas

#### Parameters

config | a GstTagXmpWriter |
schema | the schema to be added |

### gst_tag_xmp_writer_has_schema ()

    gboolean
    gst_tag_xmp_writer_has_schema (GstTagXmpWriter *config,
                                   const gchar *schema);

Checks if `schema` is going to be used

#### Parameters

config | a GstTagXmpWriter |
schema | the schema to test |

#### Returns

`TRUE` if it is going to be used

### gst_tag_xmp_writer_remove_schema ()

    void
    gst_tag_xmp_writer_remove_schema (GstTagXmpWriter *config,
                                      const gchar *schema);

Removes a schema from the list of schemas to use. Nothing is done if the schema wasn't in the list

#### Parameters

config | a GstTagXmpWriter |
schema | the schema to remove |

### gst_tag_xmp_writer_remove_all_schemas ()

    void
    gst_tag_xmp_writer_remove_all_schemas (GstTagXmpWriter *config);

Removes all schemas from the list of schemas to use. Meaning that no XMP will be generated.

#### Parameters

config | a GstTagXmpWriter |

### gst_tag_xmp_writer_tag_list_to_xmp_buffer ()

    GstBuffer *
    gst_tag_xmp_writer_tag_list_to_xmp_buffer
                                   (GstTagXmpWriter *config,
                                    const GstTagList *taglist,
                                    gboolean read_only);

## Types and Values