Mostly related to out and array parameters.
/**
* 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.
/**
* 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)
/**
* 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.
/**
* 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.
/**
* 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.
*
* 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
/**
* 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
/**
* 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.
/**
* 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.