]> gitweb.factorcode.org Git - factor-unmaintained.git/blobdiff - gstreamer/plugins/tag/GstTag-0.10.gir
unmaintained: New home for misfit Factor vocabularies.
[factor-unmaintained.git] / gstreamer / plugins / tag / GstTag-0.10.gir
diff --git a/gstreamer/plugins/tag/GstTag-0.10.gir b/gstreamer/plugins/tag/GstTag-0.10.gir
new file mode 100644 (file)
index 0000000..a1a2fc4
--- /dev/null
@@ -0,0 +1,963 @@
+<?xml version="1.0"?>
+<!-- This file was automatically generated from C sources - DO NOT EDIT!
+To affect the contents of this file, edit the original C definitions,
+and/or use gtk-doc annotations.  -->
+<repository version="1.2"
+            xmlns="http://www.gtk.org/introspection/core/1.0"
+            xmlns:c="http://www.gtk.org/introspection/c/1.0"
+            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
+  <include name="GLib" version="2.0"/>
+  <include name="GModule" version="2.0"/>
+  <include name="GObject" version="2.0"/>
+  <include name="Gst" version="0.10"/>
+  <include name="GstBase" version="0.10"/>
+  <include name="libxml2" version="2.0"/>
+  <package name="gstreamer-tag-0.10"/>
+  <namespace name="GstTag"
+             version="0.10"
+             shared-library="libgsttag-0.10.so.0"
+             c:identifier-prefixes="Gst"
+             c:symbol-prefixes="gst">
+    <constant name="TAG_CAPTURING_CONTRAST" value="capturing-contrast">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_DIGITAL_ZOOM_RATIO"
+              value="capturing-digital-zoom-ratio">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_EXPOSURE_MODE"
+              value="capturing-exposure-mode">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_EXPOSURE_PROGRAM"
+              value="capturing-exposure-program">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_FLASH_FIRED" value="capturing-flash-fired">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_FLASH_MODE" value="capturing-flash-mode">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_FOCAL_LENGTH" value="capturing-focal-length">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_FOCAL_RATIO" value="capturing-focal-ratio">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_GAIN_ADJUSTMENT"
+              value="capturing-gain-adjustment">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_ISO_SPEED" value="capturing-iso-speed">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_METERING_MODE"
+              value="capturing-metering-mode">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_SATURATION" value="capturing-saturation">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_SCENE_CAPTURE_TYPE"
+              value="capturing-scene-capture-type">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_SHARPNESS" value="capturing-sharpness">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_SHUTTER_SPEED"
+              value="capturing-shutter-speed">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_SOURCE" value="capturing-source">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CAPTURING_WHITE_BALANCE"
+              value="capturing-white-balance">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CDDA_CDDB_DISCID" value="discid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CDDA_CDDB_DISCID_FULL" value="discid-full">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CDDA_MUSICBRAINZ_DISCID" value="musicbrainz-discid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CDDA_MUSICBRAINZ_DISCID_FULL"
+              value="musicbrainz-discid-full">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CMML_CLIP" value="cmml-clip">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CMML_HEAD" value="cmml-head">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_CMML_STREAM" value="cmml-stream">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_IMAGE_HORIZONTAL_PPI" value="image-horizontal-ppi">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_IMAGE_VERTICAL_PPI" value="image-vertical-ppi">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_ALBUMARTISTID"
+              value="musicbrainz-albumartistid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_ALBUMID" value="musicbrainz-albumid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_ARTISTID" value="musicbrainz-artistid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_TRACKID" value="musicbrainz-trackid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_TRMID" value="musicbrainz-trmid">
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <class name="TagDemux"
+           c:symbol-prefix="tag_demux"
+           c:type="GstTagDemux"
+           version="0.10.15"
+           parent="Gst.Element"
+           abstract="1"
+           glib:type-name="GstTagDemux"
+           glib:get-type="gst_tag_demux_get_type"
+           glib:type-struct="TagDemuxClass">
+      <doc xml:whitespace="preserve">Opaque #GstTagDemux structure.</doc>
+      <virtual-method name="identify_tag">
+        <return-value transfer-ownership="none">
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="buffer" transfer-ownership="none">
+            <type name="Gst.Buffer" c:type="GstBuffer*"/>
+          </parameter>
+          <parameter name="start_tag" transfer-ownership="none">
+            <type name="gboolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="tag_size" transfer-ownership="none">
+            <type name="guint" c:type="guint*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="merge_tags">
+        <return-value transfer-ownership="full">
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </return-value>
+        <parameters>
+          <parameter name="start_tags" transfer-ownership="none">
+            <type name="Gst.TagList" c:type="GstTagList*"/>
+          </parameter>
+          <parameter name="end_tags" transfer-ownership="none">
+            <type name="Gst.TagList" c:type="GstTagList*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="parse_tag">
+        <return-value transfer-ownership="none">
+          <type name="TagDemuxResult" c:type="GstTagDemuxResult"/>
+        </return-value>
+        <parameters>
+          <parameter name="buffer" transfer-ownership="none">
+            <type name="Gst.Buffer" c:type="GstBuffer*"/>
+          </parameter>
+          <parameter name="start_tag" transfer-ownership="none">
+            <type name="gboolean" c:type="gboolean"/>
+          </parameter>
+          <parameter name="tag_size" transfer-ownership="none">
+            <type name="guint" c:type="guint*"/>
+          </parameter>
+          <parameter name="tags" transfer-ownership="none">
+            <type name="Gst.TagList" c:type="GstTagList**"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <field name="element">
+        <type name="Gst.Element" c:type="GstElement"/>
+      </field>
+      <field name="priv">
+        <type name="TagDemuxPrivate" c:type="GstTagDemuxPrivate*"/>
+      </field>
+      <field name="reserved">
+        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+    </class>
+    <record name="TagDemuxClass"
+            c:type="GstTagDemuxClass"
+            glib:is-gtype-struct-for="TagDemux"
+            version="0.10.15">
+      <doc xml:whitespace="preserve">The #GstTagDemuxClass structure.  See documentation at beginning of section
+for details about what subclasses need to override and do.</doc>
+      <field name="parent_class">
+        <type name="Gst.ElementClass" c:type="GstElementClass"/>
+      </field>
+      <field name="min_start_size">
+        <type name="guint" c:type="guint"/>
+      </field>
+      <field name="min_end_size">
+        <type name="guint" c:type="guint"/>
+      </field>
+      <field name="identify_tag">
+        <callback name="identify_tag">
+          <return-value transfer-ownership="none">
+            <type name="gboolean" c:type="gboolean"/>
+          </return-value>
+          <parameters>
+            <parameter name="demux" transfer-ownership="none">
+              <type name="TagDemux" c:type="GstTagDemux*"/>
+            </parameter>
+            <parameter name="buffer" transfer-ownership="none">
+              <type name="Gst.Buffer" c:type="GstBuffer*"/>
+            </parameter>
+            <parameter name="start_tag" transfer-ownership="none">
+              <type name="gboolean" c:type="gboolean"/>
+            </parameter>
+            <parameter name="tag_size" transfer-ownership="none">
+              <type name="guint" c:type="guint*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="parse_tag">
+        <callback name="parse_tag">
+          <return-value transfer-ownership="none">
+            <type name="TagDemuxResult" c:type="GstTagDemuxResult"/>
+          </return-value>
+          <parameters>
+            <parameter name="demux" transfer-ownership="none">
+              <type name="TagDemux" c:type="GstTagDemux*"/>
+            </parameter>
+            <parameter name="buffer" transfer-ownership="none">
+              <type name="Gst.Buffer" c:type="GstBuffer*"/>
+            </parameter>
+            <parameter name="start_tag" transfer-ownership="none">
+              <type name="gboolean" c:type="gboolean"/>
+            </parameter>
+            <parameter name="tag_size" transfer-ownership="none">
+              <type name="guint" c:type="guint*"/>
+            </parameter>
+            <parameter name="tags" transfer-ownership="none">
+              <type name="Gst.TagList" c:type="GstTagList**"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="merge_tags">
+        <callback name="merge_tags">
+          <return-value transfer-ownership="full">
+            <type name="Gst.TagList" c:type="GstTagList*"/>
+          </return-value>
+          <parameters>
+            <parameter name="demux" transfer-ownership="none">
+              <type name="TagDemux" c:type="GstTagDemux*"/>
+            </parameter>
+            <parameter name="start_tags" transfer-ownership="none">
+              <type name="Gst.TagList" c:type="GstTagList*"/>
+            </parameter>
+            <parameter name="end_tags" transfer-ownership="none">
+              <type name="Gst.TagList" c:type="GstTagList*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="reserved">
+        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+    </record>
+    <record name="TagDemuxPrivate" c:type="GstTagDemuxPrivate" disguised="1">
+    </record>
+    <enumeration name="TagDemuxResult"
+                 version="0.10.15"
+                 glib:type-name="GstTagDemuxResult"
+                 glib:get-type="gst_tag_demux_result_get_type"
+                 c:type="GstTagDemuxResult">
+      <doc xml:whitespace="preserve">Result values from the parse_tag virtual function.</doc>
+      <member name="broken_tag"
+              value="0"
+              c:identifier="GST_TAG_DEMUX_RESULT_BROKEN_TAG"
+              glib:nick="broken-tag"/>
+      <member name="again"
+              value="1"
+              c:identifier="GST_TAG_DEMUX_RESULT_AGAIN"
+              glib:nick="again"/>
+      <member name="ok"
+              value="2"
+              c:identifier="GST_TAG_DEMUX_RESULT_OK"
+              glib:nick="ok"/>
+    </enumeration>
+    <enumeration name="TagImageType"
+                 version="0.10.9"
+                 glib:type-name="GstTagImageType"
+                 glib:get-type="gst_tag_image_type_get_type"
+                 c:type="GstTagImageType">
+      <doc xml:whitespace="preserve">Type of image contained in an image tag (specified as field in
+the image buffer's caps structure)</doc>
+      <member name="none"
+              value="-1"
+              c:identifier="GST_TAG_IMAGE_TYPE_NONE"
+              glib:nick="none"/>
+      <member name="undefined"
+              value="0"
+              c:identifier="GST_TAG_IMAGE_TYPE_UNDEFINED"
+              glib:nick="undefined"/>
+      <member name="front_cover"
+              value="1"
+              c:identifier="GST_TAG_IMAGE_TYPE_FRONT_COVER"
+              glib:nick="front-cover"/>
+      <member name="back_cover"
+              value="2"
+              c:identifier="GST_TAG_IMAGE_TYPE_BACK_COVER"
+              glib:nick="back-cover"/>
+      <member name="leaflet_page"
+              value="3"
+              c:identifier="GST_TAG_IMAGE_TYPE_LEAFLET_PAGE"
+              glib:nick="leaflet-page"/>
+      <member name="medium"
+              value="4"
+              c:identifier="GST_TAG_IMAGE_TYPE_MEDIUM"
+              glib:nick="medium"/>
+      <member name="lead_artist"
+              value="5"
+              c:identifier="GST_TAG_IMAGE_TYPE_LEAD_ARTIST"
+              glib:nick="lead-artist"/>
+      <member name="artist"
+              value="6"
+              c:identifier="GST_TAG_IMAGE_TYPE_ARTIST"
+              glib:nick="artist"/>
+      <member name="conductor"
+              value="7"
+              c:identifier="GST_TAG_IMAGE_TYPE_CONDUCTOR"
+              glib:nick="conductor"/>
+      <member name="band_orchestra"
+              value="8"
+              c:identifier="GST_TAG_IMAGE_TYPE_BAND_ORCHESTRA"
+              glib:nick="band-orchestra"/>
+      <member name="composer"
+              value="9"
+              c:identifier="GST_TAG_IMAGE_TYPE_COMPOSER"
+              glib:nick="composer"/>
+      <member name="lyricist"
+              value="10"
+              c:identifier="GST_TAG_IMAGE_TYPE_LYRICIST"
+              glib:nick="lyricist"/>
+      <member name="recording_location"
+              value="11"
+              c:identifier="GST_TAG_IMAGE_TYPE_RECORDING_LOCATION"
+              glib:nick="recording-location"/>
+      <member name="during_recording"
+              value="12"
+              c:identifier="GST_TAG_IMAGE_TYPE_DURING_RECORDING"
+              glib:nick="during-recording"/>
+      <member name="during_performance"
+              value="13"
+              c:identifier="GST_TAG_IMAGE_TYPE_DURING_PERFORMANCE"
+              glib:nick="during-performance"/>
+      <member name="video_capture"
+              value="14"
+              c:identifier="GST_TAG_IMAGE_TYPE_VIDEO_CAPTURE"
+              glib:nick="video-capture"/>
+      <member name="fish"
+              value="15"
+              c:identifier="GST_TAG_IMAGE_TYPE_FISH"
+              glib:nick="fish"/>
+      <member name="illustration"
+              value="16"
+              c:identifier="GST_TAG_IMAGE_TYPE_ILLUSTRATION"
+              glib:nick="illustration"/>
+      <member name="artist_logo"
+              value="17"
+              c:identifier="GST_TAG_IMAGE_TYPE_BAND_ARTIST_LOGO"
+              glib:nick="artist-logo"/>
+      <member name="publisher_studio_logo"
+              value="18"
+              c:identifier="GST_TAG_IMAGE_TYPE_PUBLISHER_STUDIO_LOGO"
+              glib:nick="publisher-studio-logo"/>
+    </enumeration>
+    <function name="tag_freeform_string_to_utf8"
+              c:identifier="gst_tag_freeform_string_to_utf8"
+              version="0.10.13">
+      <doc xml:whitespace="preserve">Convenience function to read a string with unknown character encoding. If
+the string is already in UTF-8 encoding, it will be returned right away.
+If not it tries to detect byte-order-mark for UTF-16/32 cases and use that.
+Otherwise, the environment will be searched for a number of environment
+variables (whose names are specified in the NULL-terminated string array
+are specified, the current locale will be tried. If that also doesn't work,
+WINDOWS-1252/ISO-8859-1 is assumed (which will almost always succeed).</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">a newly-allocated string in UTF-8 encoding, or NULL</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">string data</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="size" transfer-ownership="none">
+          <doc xml:whitespace="preserve">length of string data, or -1 if the string is NUL-terminated</doc>
+          <type name="gint" c:type="gint"/>
+        </parameter>
+        <parameter name="env_vars" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a NULL-terminated string array of environment variable names, or NULL</doc>
+          <type name="utf8" c:type="gchar**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_from_id3_tag" c:identifier="gst_tag_from_id3_tag">
+      <doc xml:whitespace="preserve">Looks up the GStreamer tag for a ID3v2 tag.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="id3_tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ID3v2 tag to convert to GStreamer tag</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_from_id3_user_tag"
+              c:identifier="gst_tag_from_id3_user_tag">
+      <doc xml:whitespace="preserve">Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in
+TXXX frame or owner in UFID frame).</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="type" transfer-ownership="none">
+          <doc xml:whitespace="preserve">the type of ID3v2 user tag (e.g. "TXXX" or "UDIF")</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="id3_user_tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ID3v2 user tag to convert to GStreamer tag</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_from_vorbis_tag"
+              c:identifier="gst_tag_from_vorbis_tag">
+      <doc xml:whitespace="preserve">Looks up the GStreamer tag for a vorbiscomment tag.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="vorbis_tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">vorbiscomment tag to convert to GStreamer tag</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_get_language_code_iso_639_1"
+              c:identifier="gst_tag_get_language_code_iso_639_1"
+              version="0.10.26">
+      <doc xml:whitespace="preserve">Returns two-letter ISO-639-1 language code given a three-letter ISO-639-2
+language code or two-letter ISO-639-1 language code (both are accepted for
+convenience).
+Language codes are case-sensitive and expected to be lower case.
+or NULL if no mapping is known. The returned string must not be
+modified or freed.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">two-letter ISO-639-1 language code string that maps to @lang_code,</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="lang_code" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_get_language_code_iso_639_2B"
+              c:identifier="gst_tag_get_language_code_iso_639_2B"
+              version="0.10.26">
+      <doc xml:whitespace="preserve">Returns three-letter ISO-639-2 "bibliographic" language code given a
+two-letter ISO-639-1 language code or a three-letter ISO-639-2 language
+code (both are accepted for convenience).
+The "bibliographic" code is derived from the English name of the language
+(e.g. "ger" for German instead of "de" or "deu"). In most scenarios, the
+"terminological" codes are prefered.
+Language codes are case-sensitive and expected to be lower case.
+or NULL if no mapping is known. The returned string must not be
+modified or freed.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">three-letter ISO-639-2 language code string that maps to @lang_code,</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="lang_code" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_get_language_code_iso_639_2T"
+              c:identifier="gst_tag_get_language_code_iso_639_2T"
+              version="0.10.26">
+      <doc xml:whitespace="preserve">Returns three-letter ISO-639-2 "terminological" language code given a
+two-letter ISO-639-1 language code or a three-letter ISO-639-2 language
+code (both are accepted for convenience).
+The "terminological" code is derived from the local name of the language
+(e.g. "deu" for German instead of "ger"). In most scenarios, the
+"terminological" codes are prefered over the "bibliographic" ones.
+Language codes are case-sensitive and expected to be lower case.
+or NULL if no mapping is known. The returned string must not be
+modified or freed.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">three-letter ISO-639-2 language code string that maps to @lang_code,</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="lang_code" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_get_language_codes"
+              c:identifier="gst_tag_get_language_codes"
+              version="0.10.26"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Returns a list of known language codes (in form of two-letter ISO-639-1
+codes). This is useful for UIs to build a list of available languages for
+tagging purposes (e.g. to tag an audio track appropriately in a video or
+audio editor).
+with g_strfreev() when no longer needed.</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">NULL-terminated string array with two-letter language codes. Free</doc>
+        <array c:type="gchar**">
+          <type name="utf8"/>
+        </array>
+      </return-value>
+    </function>
+    <function name="tag_get_language_name"
+              c:identifier="gst_tag_get_language_name"
+              version="0.10.26">
+      <doc xml:whitespace="preserve">Returns the name of the language given an ISO-639 language code, such
+as often found in a GST_TAG_LANGUAGE tag. The name will be translated
+according to the current locale (if the library was built against the
+iso-codes package, otherwise the English name will be returned).
+Language codes are case-sensitive and expected to be lower case.
+not be mapped to a language name. The returned string must not be
+modified and does not need to freed; it will stay valid until the
+application is terminated.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">language name in UTF-8 format, or NULL if @language_code could</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="language_code" transfer-ownership="none">
+          <doc xml:whitespace="preserve">two or three-letter ISO-639 language code</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_id3_genre_count"
+              c:identifier="gst_tag_id3_genre_count">
+      <doc xml:whitespace="preserve">Gets the number of ID3v1 genres that can be identified. Winamp genres are 
+included.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">the number of ID3v1 genres that can be identified</doc>
+        <type name="guint" c:type="guint"/>
+      </return-value>
+    </function>
+    <function name="tag_id3_genre_get" c:identifier="gst_tag_id3_genre_get">
+      <doc xml:whitespace="preserve">Gets the ID3v1 genre name for a given ID.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">the genre or NULL if no genre is associated with that ID.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="id" transfer-ownership="none">
+          <doc xml:whitespace="preserve">ID of genre to query</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_image_data_to_image_buffer"
+              c:identifier="gst_tag_image_data_to_image_buffer"
+              version="0.10.20"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Helper function for tag-reading plugins to create a #GstBuffer suitable to
+add to a #GstTagList as an image tag (such as #GST_TAG_IMAGE or
+#GST_TAG_PREVIEW_IMAGE) from the encoded image data and an (optional) image
+type.
+blob of binary image data, often accompanied by a MIME type or some other
+content type string (e.g. 'png', 'jpeg', 'jpg'). Sometimes there is also an
+'image type' to indicate what kind of image this is (e.g. front cover,
+back cover, artist, etc.). The image data may also be an URI to the image
+rather than the image itself.
+In GStreamer, image tags are #GstBuffer&lt;!-- --&gt;s containing the raw image
+data, with the buffer caps describing the content type of the image
+(e.g. image/jpeg, image/png, text/uri-list). The buffer caps may contain
+an additional 'image-type' field of #GST_TYPE_TAG_IMAGE_TYPE to describe
+the type of image (front cover, back cover etc.). #GST_TAG_PREVIEW_IMAGE
+tags should not carry an image type, their type is already indicated via
+the special tag name.
+This function will do various checks and typefind the encoded image
+data (we can't trust the declared mime type).</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">a newly-allocated image buffer for use in tag lists, or NULL</doc>
+        <type name="Gst.Buffer" c:type="GstBuffer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="image_data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">the (encoded) image</doc>
+          <type name="guint8" c:type="guint8*"/>
+        </parameter>
+        <parameter name="image_data_len" transfer-ownership="none">
+          <doc xml:whitespace="preserve">the length of the encoded image data at @image_data</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="image_type" transfer-ownership="none">
+          <doc xml:whitespace="preserve">type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass #GST_TAG_IMAGE_TYPE_NONE if no image type should be set at all (e.g. for preview images)</doc>
+          <type name="TagImageType" c:type="GstTagImageType"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_add_id3_image"
+              c:identifier="gst_tag_list_add_id3_image"
+              version="0.10.20">
+      <doc xml:whitespace="preserve">Adds an image from an ID3 APIC frame (or similar, such as used in FLAC)
+to the given tag list. Also see gst_tag_image_data_to_image_buffer() for
+more information on image tags in GStreamer.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">%TRUE if the image was processed, otherwise %FALSE</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="tag_list" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a tag list</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="image_data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">the (encoded) image</doc>
+          <type name="guint8" c:type="guint8*"/>
+        </parameter>
+        <parameter name="image_data_len" transfer-ownership="none">
+          <doc xml:whitespace="preserve">the length of the encoded image data at @image_data</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="id3_picture_type" transfer-ownership="none">
+          <doc xml:whitespace="preserve">picture type as per the ID3 (v2.4.0) specification for the APIC frame (0 = unknown/other)</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_from_exif_buffer"
+              c:identifier="gst_tag_list_from_exif_buffer"
+              version="0.10.30">
+      <doc xml:whitespace="preserve">Parses the IFD and IFD tags data contained in the buffer and puts it
+on a taglist. The base_offset is used to subtract from the offset in
+the tag entries and be able to get the offset relative to the buffer
+start</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">The parsed taglist</doc>
+        <type name="Gst.TagList" c:type="GstTagList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:whitespace="preserve">The exif buffer</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+        <parameter name="byte_order" transfer-ownership="none">
+          <doc xml:whitespace="preserve">byte order of the data</doc>
+          <type name="gint" c:type="gint"/>
+        </parameter>
+        <parameter name="base_offset" transfer-ownership="none">
+          <doc xml:whitespace="preserve">Offset from the tiff header to this buffer</doc>
+          <type name="guint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_from_exif_buffer_with_tiff_header"
+              c:identifier="gst_tag_list_from_exif_buffer_with_tiff_header"
+              version="0.10.30">
+      <doc xml:whitespace="preserve">Parses the exif tags starting with a tiff header structure.</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">The taglist</doc>
+        <type name="Gst.TagList" c:type="GstTagList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:whitespace="preserve">The exif buffer</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_from_vorbiscomment_buffer"
+              c:identifier="gst_tag_list_from_vorbiscomment_buffer">
+      <doc xml:whitespace="preserve">Creates a new tag list that contains the information parsed out of a
+vorbiscomment packet.
+given vorbiscomment buffer or NULL on error.</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">A new #GstTagList with all tags that could be extracted from the</doc>
+        <type name="Gst.TagList" c:type="GstTagList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:whitespace="preserve">buffer to convert</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+        <parameter name="id_data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">identification data at start of stream</doc>
+          <type name="guint8" c:type="guint8*"/>
+        </parameter>
+        <parameter name="id_data_length" transfer-ownership="none">
+          <doc xml:whitespace="preserve">length of identification data</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="vendor_string" transfer-ownership="none">
+          <doc xml:whitespace="preserve">pointer to a string that should take the vendor string of this vorbis comment or NULL if you don't need it.</doc>
+          <type name="utf8" c:type="gchar**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_from_xmp_buffer"
+              c:identifier="gst_tag_list_from_xmp_buffer"
+              version="0.10.29">
+      <doc xml:whitespace="preserve">Parse a xmp packet into a taglist.</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">new taglist or %NULL, free the list when done</doc>
+        <type name="Gst.TagList" c:type="GstTagList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:whitespace="preserve">buffer</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_new_from_id3v1"
+              c:identifier="gst_tag_list_new_from_id3v1">
+      <doc xml:whitespace="preserve">Parses the data containing an ID3v1 tag and returns a #GstTagList from the
+parsed data.</doc>
+      <return-value transfer-ownership="full">
+        <doc xml:whitespace="preserve">A new tag list or NULL if the data was not an ID3v1 tag.</doc>
+        <type name="Gst.TagList" c:type="GstTagList*"/>
+      </return-value>
+      <parameters>
+        <parameter name="data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">128 bytes of data containing the ID3v1 tag</doc>
+          <type name="guint8" c:type="guint8*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_to_exif_buffer"
+              c:identifier="gst_tag_list_to_exif_buffer"
+              version="0.10.30"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Formats the tags in taglist on exif format. The resulting buffer contains
+the tags IFD and is followed by the data pointed by the tag entries.</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">A GstBuffer containing the tag entries followed by the tag data</doc>
+        <type name="Gst.Buffer" c:type="GstBuffer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="taglist" transfer-ownership="none">
+          <doc xml:whitespace="preserve">The taglist</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="byte_order" transfer-ownership="none">
+          <doc xml:whitespace="preserve">byte order used in writing (G_LITTLE_ENDIAN or G_BIG_ENDIAN)</doc>
+          <type name="gint" c:type="gint"/>
+        </parameter>
+        <parameter name="base_offset" transfer-ownership="none">
+          <doc xml:whitespace="preserve">Offset from the tiff header first byte</doc>
+          <type name="guint32" c:type="guint32"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_to_exif_buffer_with_tiff_header"
+              c:identifier="gst_tag_list_to_exif_buffer_with_tiff_header"
+              version="0.10.30"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Formats the tags in taglist into exif structure, a tiff header
+is put in the beginning of the buffer.</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">A GstBuffer containing the data</doc>
+        <type name="Gst.Buffer" c:type="GstBuffer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="taglist" transfer-ownership="none">
+          <doc xml:whitespace="preserve">The taglist</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_to_vorbiscomment_buffer"
+              c:identifier="gst_tag_list_to_vorbiscomment_buffer"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Creates a new vorbiscomment buffer from a tag list.
+that could be converted from the given tag list.</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">A new #GstBuffer containing a vorbiscomment buffer with all tags</doc>
+        <type name="Gst.Buffer" c:type="GstBuffer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="list" transfer-ownership="none">
+          <doc xml:whitespace="preserve">tag list to convert</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="id_data" transfer-ownership="none">
+          <doc xml:whitespace="preserve">identification data at start of stream</doc>
+          <type name="guint8" c:type="guint8*"/>
+        </parameter>
+        <parameter name="id_data_length" transfer-ownership="none">
+          <doc xml:whitespace="preserve">length of identification data, may be 0 if @id_data is NULL</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="vendor_string" transfer-ownership="none">
+          <doc xml:whitespace="preserve">string that describes the vendor string or NULL</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_list_to_xmp_buffer"
+              c:identifier="gst_tag_list_to_xmp_buffer"
+              version="0.10.29"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Formats a taglist as a xmp packet.</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">new buffer or %NULL, unref the buffer when done</doc>
+        <type name="Gst.Buffer" c:type="GstBuffer*"/>
+      </return-value>
+      <parameters>
+        <parameter name="list" transfer-ownership="none">
+          <doc xml:whitespace="preserve">tags</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="read_only" transfer-ownership="none">
+          <doc xml:whitespace="preserve">does the container forbid inplace editing</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_parse_extended_comment"
+              c:identifier="gst_tag_parse_extended_comment"
+              version="0.10.10">
+      <doc xml:whitespace="preserve">Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and
+separate it into its components.
+If successful, @key, @lang and/or @value will be set to newly allocated
+strings that you need to free with g_free() when done. @key and @lang
+may also be set to NULL by this function if there is no key or no language
+code in the extended comment string.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">TRUE if the string could be parsed, otherwise FALSE</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="ext_comment" transfer-ownership="none">
+          <doc xml:whitespace="preserve">an extended comment string, see #GST_TAG_EXTENDED_COMMENT</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="key" transfer-ownership="none">
+          <doc xml:whitespace="preserve">return location for the comment description key, or NULL</doc>
+          <type name="utf8" c:type="gchar**"/>
+        </parameter>
+        <parameter name="lang" transfer-ownership="none">
+          <doc xml:whitespace="preserve">return location for the comment ISO-639 language code, or NULL</doc>
+          <type name="utf8" c:type="gchar**"/>
+        </parameter>
+        <parameter name="value" transfer-ownership="none">
+          <doc xml:whitespace="preserve">return location for the actual comment string, or NULL</doc>
+          <type name="utf8" c:type="gchar**"/>
+        </parameter>
+        <parameter name="fail_if_no_key" transfer-ownership="none">
+          <doc xml:whitespace="preserve">whether to fail if strings are not in key=value form</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_register_musicbrainz_tags"
+              c:identifier="gst_tag_register_musicbrainz_tags">
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+    </function>
+    <function name="tag_to_id3_tag" c:identifier="gst_tag_to_id3_tag">
+      <doc xml:whitespace="preserve">Looks up the ID3v2 tag for a GStreamer tag.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">The corresponding ID3v2 tag or NULL if none exists.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="gst_tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">GStreamer tag to convert to vorbiscomment tag</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_to_vorbis_comments"
+              c:identifier="gst_tag_to_vorbis_comments"
+              introspectable="0">
+      <doc xml:whitespace="preserve">Creates a new tag list that contains the information parsed out of a
+vorbiscomment packet.
+g_list_foreach (list, (GFunc) g_free, NULL) plus g_list_free (list)</doc>
+      <return-value>
+        <doc xml:whitespace="preserve">A #GList of newly-allowcated key=value strings. Free with</doc>
+        <type name="GLib.List" c:type="GList*">
+          <type name="gpointer" c:type="gpointer"/>
+        </type>
+      </return-value>
+      <parameters>
+        <parameter name="list" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a #GstTagList</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a GStreamer tag identifier, such as #GST_TAG_ARTIST</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="tag_to_vorbis_tag" c:identifier="gst_tag_to_vorbis_tag">
+      <doc xml:whitespace="preserve">Looks up the vorbiscomment tag for a GStreamer tag.</doc>
+      <return-value transfer-ownership="none">
+        <doc xml:whitespace="preserve">The corresponding vorbiscomment tag or NULL if none exists.</doc>
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="gst_tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">GStreamer tag to convert to vorbiscomment tag</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="vorbis_tag_add" c:identifier="gst_vorbis_tag_add">
+      <doc xml:whitespace="preserve">Convenience function using gst_tag_from_vorbis_tag(), parsing
+a vorbis comment string into the right type and adding it to the
+given taglist @list.
+Unknown vorbiscomment tags will be added to the tag list in form
+of a #GST_TAG_EXTENDED_COMMENT (since 0.10.10 at least).</doc>
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="list" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a #GstTagList</doc>
+          <type name="Gst.TagList" c:type="GstTagList*"/>
+        </parameter>
+        <parameter name="tag" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a vorbiscomment tag string (key in key=value), must be valid UTF-8</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+        <parameter name="value" transfer-ownership="none">
+          <doc xml:whitespace="preserve">a vorbiscomment value string (value in key=value), must be valid UTF-8</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
+  </namespace>
+</repository>