def _gather_field_values(
	item, *, fields=None, field_map=FIELD_MAP,
	normalize_values=False, normalize_func=normalize_value):
	"""Create a tuple of normalized metadata field values.

	Parameter:
		item (~collections.abc.Mapping, str, os.PathLike): Item dict or filepath.
		fields (list): A list of fields used to compare item dicts.
		field_map (~collections.abc.Mapping): A mapping field name aliases.
			Default: :data:`~google_music_utils.constants.FIELD_MAP`
		normalize_values (bool): Normalize metadata values to remove common differences between sources.
			Default: ``False``
		normalize_func (function): Function to apply to metadata values if
			``normalize_values`` is ``True``.
			Default: :func:`~google_music_utils.utils.normalize_value`

	Returns:
		tuple: Values from the given metadata fields.
	"""

	it = get_item_tags(item)

	if fields is None:
		fields = list(it.keys())

	normalize = normalize_func if normalize_values else lambda x: str(x)

	field_values = []

	for field in fields:
		field_values.append(
			normalize(
				list_to_single_value(
					get_field(it, field, field_map=field_map)
				)
			)
		)

	return tuple(field_values)