The Metadata Mechanic

This app is designed to help you solve typical metadata problems not easily handled with other tools.

How it Works

The Metadata Mechanic can be used to:

This makes it easy to fix typical problems like misspellings in tag values, adding missing data, appending or prepending text to existing values or to perform complex text replacements.

Tag, Operation and Value

You specify the target tag you want to modify. Then you select one of the available operations, like Set or Replace. Finally, you specify the value for the operation. This can be literal text, one or more variables or another metadata tag.

The ability to use variables makes this tool extra powerful and flexible.

Use RAW Value

For all metadata values imported via ExifTool, IMatch, caches both the formatted value and the so-called raw value (numerical value) if delivered by ExifTool. A raw value is a numerical value stored inside the metadata block which has a textual representation or translation.

Not all metadata tags have a raw value. ExifTool also does not deliver a raw/numerical value when it is identical to the formatted value.

Some examples are:

Metadata TagRAW ValueFormatted Value
GPS Longitude8.5252018 deg 31' 30.72"
ExternalFlashFirmware (Nikon)1 11.01 (SB-800 or Metz 58 AF-1)
ExposureProgramShutter speed priority AE
Exif-ShutterSpeedValue0.006251/160

Sometimes you may want to manipulate the raw value directly, e.g. when setting GPS coordinates. it is much easier to set a coordinate in numerical form 8.525201 than in formatted form 8 deg 31' 30.72". In this case, enable the Use RAW Value option.

Make some tests when you work with the RAW option, to ensure that you are using the correct data format and that the write-back also works as you expect.

Some Tips for Working with Raw Values

You can use the VarToy and and variables to see both the formatted and raw value for any tag you like. See Metadata Variables: Formatted and Raw for more information.

Maybe create a custom Metadata Panel layout and configure it to show the raw values for tags you are interested in.

When you use the ExifTool Command Processor, you can use the -n argument (e.g. with the List all Metadata preset) to show the numerical values.

Using the -n parameter to show raw values in the ECP.

The Delete Tag Contents Operation

This operation allows you to delete the contents of any tag. Be very carful with this. Use it only when you know what you are doing.

Keep in mind that many XMP metadata tags are mapped during write-back to tags in the EXIF, GPS and legacy IPTC groups. if you use this operation to delete tag contents, always delete the XMP tag value, where applicable. IMatch will then clear the mapped tag in the native metadata format during write-back as well.

Filters

You can optionally specify a filter to control which files/values to process. For example, if you only want to append a value to a tag if the tag does not already contain the text to be appended. Or if you only want to replace text if a certain condition is met - like changing the family name after marriage.

Date and Time Tags

When you set XMP date and time tags from a variable, you have to use the format variable function to produce the YYYY:MM:DD HH:MM:SS format IMatch expects, for example: {File.MD.XMP::xmp\CreateDate\CreateDate|format:YYYY:MM:DD hh:mm:ss}.
Variables by default return date and time formatted for your local date and time format, and this is not suitable for setting metadata tags.