diff --git a/gst-libs/gst/tag/gstid3tag.c b/gst-libs/gst/tag/gstid3tag.c
index 5718bae..1149d5b 100644
--- a/gst-libs/gst/tag/gstid3tag.c
+++ b/gst-libs/gst/tag/gstid3tag.c
@@ -252,7 +252,7 @@
 
 /**
  * gst_tag_list_new_from_id3v1:
- * @data: 128 bytes of data containing the ID3v1 tag
+ * @data: (array fixed-size=128): 128 bytes of data containing the ID3v1 tag
  *
  * Parses the data containing an ID3v1 tag and returns a #GstTagList from the
  * parsed data.
@@ -337,7 +337,7 @@
 /**
  * gst_tag_list_add_id3_image:
  * @tag_list: a tag list
- * @image_data: the (encoded) image
+ * @image_data: (array length=image_data_len): the (encoded) image
  * @image_data_len: the length of the encoded image data at @image_data
  * @id3_picture_type: picture type as per the ID3 (v2.4.0) specification for
  *    the APIC frame (0 = unknown/other)
diff --git a/gst-libs/gst/tag/gstvorbistag.c b/gst-libs/gst/tag/gstvorbistag.c
index 118ea21..28c24ab 100644
--- a/gst-libs/gst/tag/gstvorbistag.c
+++ b/gst-libs/gst/tag/gstvorbistag.c
@@ -403,12 +403,12 @@
 
 /**
  * gst_tag_list_from_vorbiscomment:
- * @data: data to convert
+ * @data: (array length=size): data to convert
  * @size: size of @data
- * @id_data: identification data at start of stream
+ * @id_data: (array length=id_data_length): identification data at start of stream
  * @id_data_length: length of identification data
- * @vendor_string: pointer to a string that should take the vendor string
- *                 of this vorbis comment or NULL if you don't need it.
+ * @vendor_string: (out) (optional): pointer to a string that should take the
+ *     vendor string of this vorbis comment or NULL if you don't need it.
  *
  * Creates a new tag list that contains the information parsed out of a
  * vorbiscomment packet.
@@ -501,10 +501,10 @@
 /**
  * gst_tag_list_from_vorbiscomment_buffer:
  * @buffer: buffer to convert
- * @id_data: identification data at start of stream
+ * @id_data: (array length=id_data_length): identification data at start of stream
  * @id_data_length: length of identification data
- * @vendor_string: pointer to a string that should take the vendor string
- *                 of this vorbis comment or NULL if you don't need it.
+ * @vendor_string: (out) (optional): pointer to a string that should take the
+ *     vendor string of this vorbis comment or NULL if you don't need it.
  *
  * Creates a new tag list that contains the information parsed out of a
  * vorbiscomment packet.
@@ -777,9 +777,9 @@
 /**
  * gst_tag_list_to_vorbiscomment_buffer:
  * @list: tag list to convert
- * @id_data: identification data at start of stream
+ * @id_data: (array length=id_data_length): identification data at start of stream
  * @id_data_length: length of identification data, may be 0 if @id_data is NULL
- * @vendor_string: string that describes the vendor string or NULL
+ * @vendor_string: (nullable): string that describes the vendor string or NULL
  *
  * Creates a new vorbiscomment buffer from a tag list.
  *
diff --git a/gst-libs/gst/tag/gstxmptag.c b/gst-libs/gst/tag/gstxmptag.c
index 49db44b..a52b849 100644
--- a/gst-libs/gst/tag/gstxmptag.c
+++ b/gst-libs/gst/tag/gstxmptag.c
@@ -1698,7 +1698,8 @@
  * gst_tag_list_to_xmp_buffer:
  * @list: tags
  * @read_only: does the container forbid inplace editing
- * @schemas: %NULL terminated array of schemas to be used on serialization
+ * @schemas: (array zero-terminated):
+ *     %NULL terminated array of schemas to be used on serialization
  *
  * Formats a taglist as a xmp packet using only the selected
  * schemas. An empty list (%NULL) means that all schemas should
diff --git a/gst-libs/gst/tag/tags.c b/gst-libs/gst/tag/tags.c
index b3f2cd4..b0c7e61 100644
--- a/gst-libs/gst/tag/tags.c
+++ b/gst-libs/gst/tag/tags.c
@@ -242,9 +242,11 @@
 /**
  * gst_tag_parse_extended_comment:
  * @ext_comment: an extended comment string, see #GST_TAG_EXTENDED_COMMENT
- * @key: return location for the comment description key, or NULL
- * @lang: return location for the comment ISO-639 language code, or NULL
- * @value: return location for the actual comment string, or NULL
+ * @key: (out) (nullable):
+ *     return location for the comment description key, or NULL
+ * @lang: (out) (nullable):
+ *     return location for the comment ISO-639 language code, or NULL
+ * @value: (out): return location for the actual comment string, or NULL
  * @fail_if_no_key: whether to fail if strings are not in key=value form
  *
  * Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and
@@ -303,10 +305,10 @@
 
 /**
  * gst_tag_freeform_string_to_utf8:
- * @data: string data
+ * @data: (array length=size) (element-type gchar): string data
  * @size: length of string data, or -1 if the string is NUL-terminated
- * @env_vars: a NULL-terminated string array of environment variable names,
- *            or NULL
+ * @env_vars: (array zero-terminated=1)
+ *    a NULL-terminated string array of environment variable names, or NULL
  *
  * 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.
@@ -474,7 +476,7 @@
 
 /**
  * gst_tag_image_data_to_image_sample:
- * @image_data: the (encoded) image
+ * @image_data: (array length=image_data_len): the (encoded) image
  * @image_data_len: the length of the encoded image data at @image_data
  * @image_type: 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.
