# Preferences - FLAC/OGG Mappings

FLAC and OGG tags, or comments, are free format where multiple values for the same named tag are permitted. While Yate supplies a default set of mappings you may change the mappings to whatever you wish. You can map FLAC/OGG tags to most of Yate's fields.

Note: You cannot make changes to the mappings when files are open.

You can assign more than one FLAC/OGG tag to the same field, but when the file is written only the first FLAC/OGG tag name will be used. When more than one name is associated with a field the first occurrence of the field will have its name prefixed with a -. You can find these items easily by selecting any table row and typing a -. If the name you want to be written is not the first, you can force it to be by selecting the item and clicking on the 1 button. Note that if the mapping is associated with a Custom Field, the Custom Field's mapping will be updated to reflect the new default.

Yate does not allow you to assign FLAC/OGG tags to any of its binary encoded fields.

The FLAC/OGG vendor identification is mapped by assigning a field to the name _VENDOR_. If _VENDOR_ is not assigned the initial vendor string will be used when the file is written. In order to prevent people from inadvertently removing the vendor identification, Yate preserves the old vendor identification if the mapped field is set to empty. You can get around the implementation by setting the mapped field (typically Encoded By) to one or more spaces. When writing the file, Yate removes leading and trailing spaces from the vendor string after the preservation test is made. Therefore setting the mapped field to a single space will result in an empty vendor identification.

Any FLAC/OGG tags that do not have an assigned field will be mapped to a UDTI or if the FLAC/OGG tag name contains URL, to a UDURL.

If an assigned field supports more than one item or value, multiple instances of a FLAC/OGG tag will be assigned as specified. If the assigned field only supports a single value, the first FLAC/OGG tag will be assigned and subsequent tags of the same name will be assigned to UDTIs or UDURLs. For example, if you have two TITLE tags in a file and TITLE is mapped to the Title field, the Title field will display the two tags in its advanced editor. If you have two COMMENT tags and COMMENT is assigned to the Comment field, the two tags will appear as separate items in the Comments advanced editor.

To create a new FLAC/OGG mapping click on the + button. Choose a field from the pop up menu and then edit the name.

To remove FLAC/OGG mappings, select one or more mappings in the table and click the - button. Note that mappings associated with Custom Fields will not be deleted. Removing a Custom Field's FLAC/OGG value in Preferences-General-Custom Fields will remove the mapping. If you delete all displayed mappings, the mappings will be reset to their out of the box state with Custom Fields applied. In fact if you do not have at least one non Custom Field mapping, a reset will be triggered.

To rename a FLAC/OGG mapping, select a single mapping in the table and click on the ✎ button. Alternately double click in the desired item's name column.

To change the field associated with an item, select the item and click on the F button. Alternately, double click in the desired item's mapping column. Note that you cannot change the associated field on a mapping currently used by a Custom Field.

To export one or more FLAC/OGG mappings so that they can later be imported, select one or more mappings in the table and click the ⇒ button.

## Involved People List Items

Some applications write a few of the Involved People roles to separate low level items and they are not associated with an Involved People mapping. In order to facilitate these items, Yate allows you to set mappings for Involved People List Items. These items describe a mapping of a field which is displayed in Involved People but gets read and written from alternate mappings. These Involved People List Items take the following form:

> mapping name{=display name}

The display name is optional. If not specified, the mapping name will be used to represent the role in the Involved People field. The following Involved People List Items are supplied by default:

> ARRANGER=Arranger
> DJMIXER=DJ Mixer
> ENGINEER=Engineer
> MIXER=Mixer
> PRODUCER=Producer

When specifying the roles in the Involved People fields the effective display name must be used. The name is case insensitive.

You can also elect to have Involved People List Items written twice, once to the designated mapping and once to the default Involved People mapping. More information on FLAC/OGG options can be found in Preferences - Audio - FLAC/OGG.

## Special Considerations

FLAC/OGG tags are case insensitive and are stored in the file with only upper case alphabetic characters. ID3 and MPEG-4 tags are case sensitive. The FLAC/OGG tags are only converted to the necessary internal format when they are written to the file. If you are using Yate fields or unassigned items that Yate directly processes (eg. Discogs Release Id), you do not have to worry about the alphabetic case. This is because the application normalizes the internal names of items it directly knows about.

If however, you are defining your own metadata this can be problematic. If you create a UDTI named My Metadata, the UDTI will appear as MY METADATA after being saved and reloaded. The User Defined action function can be set to be case insensitive and that is one method of getting around the issue.

You have another option. Names which are mapped to UDTIs are treated as normalization values and affect the display of the metadata being loaded. If you do not map My Metadata it will be implicitly be mapped to a UDTI but the display name will not be preserved. However, if you map a UDTI to My Mapping, Yate will handle the modification of the name when loading and writing the value.