ExifToolGUI for Windows v6.xx



Content


General info:

Menu:

Panels:

Final words


Introduction

In the summer of 2023 I decided to revive the ExifToolGui project initally created by Bogdan Hrastnik. This revival resulted in Version 6
Read his complete documentation here

This was his intro, I will quote it now, because it still holds for me.
There are many tools for viewing/editing metadata inside image files. In my opinion, ExifTool by Phil Harvey, is the best I've found so far. Here's why:


The only downside for many potential users is the fact, that ExifTool is a "command-line" utility. That means, there's no Graphic User Interface (GUI), so all work must be done by typing commands inside "Command Prompt" window. Such approach gives ExifTool great flexibility, but is somehow difficult to use -especially for those, who don't use ExifTool regularly. So, I've decided to make some simple ExifTool GUI for my private use. There are already some GUI's that make use of ExifTool, but some of them are not flexible enough (for my needs) and/or have somehow limited use. When making ExifToolGUI, the main goal was:


Basic idea behind GUI is, to keep it simple! Thus, only those options are implemented, which I believe, are essential for majority of users.

Major changes with ExifToolGUI v6.xx



See changelog.txt for a complete list of issues.

Requirements and preparations

ExiftoolGUI should run on Windows 7, 8 32-64bit. However, it is highly recommended to use Windows 10 or 11 when you plan to use the OSM map, or GEOcoding.
It will not run on Windows XP or earlier!
If you use the installer to install ExifToolGui that should take care of all required components, and you can skip this section.
The portable version is still available, and will be continued to be released. Read the following requirements.

1. ExifTool

Starting with V12.88 the ExifTool distribution has changed. Please follow the instructions on https://exiftool.org/install.html if you want to install ExifTool manually. The GUI installer V6.3.4. can also perform these steps.

ExifTool (version 12.78 and later) comes standard with a DB used for the GeoLocation feature. An alternate (larger) DB is also provided.
The installer (V6.3.2) can download and install this larger DB automatically, See https://exiftool.org/geolocation.html for more info how to do this manually.

Notes:

2. ExifToolGUI

You can download GUI from here. The portable version of ExifToolGui doesn't need to be "installed". Just download the executable for your platform (ExifToolGui.exe or ExifToolGui_X64.exe) into any directory, create a Desktop shortcut and GUI is ready to use.

Notes:

3. Edge browser needed for OSM map

If you don't need the OSM map functionality, you can skip this step.
The OSM map is hosted by an internal web browser based on Edge. There are 2 requirements. The Edge Runtime and the WebView2Loader.dll.

Edge Runtime

On modern Windows versions the runtime will be available standard. If it is missing on your system, or you want to install the latest version use this link and install one of Edge Canary, Dev or Beta.

WebView2Loader.dll

This dll is not standard available and can be downloaded from NuGet. I recommend to save it in the same directory as ExifToolGui.exe, but any directory that Windows searches will do. If the dll can not be loaded you will get this dialog.




More info for developers from Embarcadero

4. Wish to see thumbnails of raw image files?

Of course you do. What you need is a "raw codec", usually available for free from the camera manufacturer. The best I've found so far is "FastPictureViewer codec" (from here). It is very fast, covers many raw formats and is free for personal use.
Note: For recent Windows versions the Raw Image Extension obtainable in the Microsoft Store may be enough.

Readme Using Codecs.txt

5. Translations Language DLL's

If you want to use a different language for GUI, you need to download and install the appropriate DLL from Translation and install it alongside the EXE.
Be sure to download the same version (V6.x.y) and platform (32, 64 bits _X64) as the EXE.

Example:
  • 32 bits version German: ExifToolGUI.DEU
  • 64 bits version French: ExifToolGUI_X64.FRA


  • That's all you need. And when a new ExifTool or GUI version is available, you only need to repeat process as described above.


    Program menu

    Preferences




    General settings tab

    Metadata language
    Here you can choose the language for displaying metadata tag names and values in Metadata panel. Selected language is also used when working in ExifTool direct mode (output to Log window), or when exporting metadata to external TXT files.

    Let GUI rotate JPG preview image
    In most cases, you will need to check this option, because Windows doesn't automatically rotate JPG images according to the Exif:Orientation tag value. Anyway, if this option is checked, then GUI won't change/rotate your JPG files physically: rotation (if needed) is applied in GUI's memory after the image has been loaded for displaying. If checked, GUI will only rotate image in the Preview panel. Thumbnails aren't rotated.

    Enabling internet access
    By default, this option is unchecked and if you are a bit paranoid, then keep it that way. In that case however, you won't be able to use GUI's OSM Map feature for geotagging your images manually. You have to enable this option also if you want to use GeoCoding.

    Default Startup & Export folder
    I think, these two options don't need some special explanation.

    Separator character
    Some metadata tags (i.e. keywords, etc.) can hold multiple values and to be able to separate these values when showing, some "special" character is needed. Keep in mind, that this character isn't stored into metadata! It is just used to separate values when displaying multi-value tags on your PC.

    Save File list Details state on exit
    If checked, then Details: button state and selected File list view (Standard file list, Camera settings,..etc.) are saved when closing GUI.





    Thumbnail settings tab

    Generate thumbnails as needed
    Depending on the type of files, the codecs installed, and of course the system, generating thumbnails can be a time-consuming process. You can disable automatic generating here.

    Allow Non Microsoft Wic codecs
    Enabling this option allows GUI to load Wic Codecs not provided by Microsoft.
    Use this if you experience problems with previewing Raw images.

    Generate thumbnails now
    if you dont have 'Generate thumbnails as needed' checked, this option allows you to manually generate them. You can also generate them manually from the context-menus on the folder and file list.

    Cleanup Thumbnails
    The thumbnails that GUI generates are the same as Windows explorer uses. They share the same folder on your hard-drive. Sometimes the cache gets corrupt, or you just want to cleanup. It can be done with the standard Windows program 'CleanMgr'. For your convenience you can start that program here.





    GeoCoding settings tab

    Here you can setup the GeoCoding parameters.
    Getting started: Readme GeoCoding Getting started.txt
    For an in-depth explanation see Readme GeoCoding.txt

    MapTiler Api Key

    If you register at https://www.maptiler.com you will receive an Api Key. Enter your Api Key here to choose additional Base layers in the OSM map, besides the standard Mapnik and Open Topo Map.






    Shell Integration settings tab

    -application When minimized move to tray
    Put an icon for GUI in the Windows System Tray, also known as the notification area, when GUI is minimized.
    You will likely have to make the icon visible in Windows Taskbar Settings.
    By clicking on the icon on the taskbar you can easily start GUI. A Right Click on the icon will show a menu with Version info, and the option to reset the window sizes.



    -application Single instance
    Allow only one running instance of GUI. If you try to start a second instance of GUI, it will try to make the running instance visible.
    Use this option when you have registered GUI in the Contextmenu, or you will get a new instance of GUI everytime you use the context menu.

    Register ExifToolGui in Contextmenu (Requires elevation)
    The buttons Add and Remove are only enabled when you have started GUI as Admin.
    If you have added GUI to the contextmenu you can start it by Right clicking on a folder.



    Notes:




    Other settings tab

    Workspace: Move focus to next tag/line after value is entered
    By default, when you hit Enter button to confirm changing tag value in the Workspace, focus of selected tag/line automatically will move to the next tag/line. If you prefer focus would remain on currently edited tag/line, then uncheck this option.

    Workspace: Double Click adds/removes tags
    If you check this, double-clicking in the Workspace will remove a tag, double-clicking on one of the tabs Exif, Xmp, Iptc, Maker, All will add that tag to the Workspace.

    Workspace: Enable line editing
    Enabling this option will allow direct editing in the Workspace.
    See edit metadata in Workspace.

    Exiftool.exe location
    If you need to override the location of exiftool.exe you can do that here.

    Exiftool config
    Use custom config. You can specify a complete path, or just the name. Refer to -config for more info.

    File list: Show Folders in File list
    The default setting is to only show files in the File list panel. If you enable this option, also folders (directories) will be shown, allowing easier navigation.

    File list: Show Hidden Folders and Files in File list (Admin required)
    Will also show hidden Folders and Files in the Folder Treeview and the File list panels. You need to be Admin to use this, and not everything you see may be readable/writeable.

    File list: Show Breadcrumb (Address bar) in File list
    Enable a BreadCrumb bar on top of the file list. Allows for easier navigating.

    Hint pause timeout in Millisecs
    Hovering over the metadata panel will display the complete metadata value as a hint. This was added because long values are often not completely visible.
    Setting this value to 0 (zero) will effectively disable the hints.

    ExifTool direct auto complete options
    Here you setup auto appending, or suggesting, in the edit box of ExifTool direct.
    Note:To find the matches, the commands in the predefined list are used.

    Example showing enabled auto complete:



    Workspace manager


    Here you define what will be shown in the Metadata panel when Workspace is selected. Besides ExifTool direct option, this is the most powerfull GUI feature.




    Buttons

    Default auto complete options

    Here you specify the default auto complete options. These options will be used for all tags that have the auto complete option set to default.
    Note:To find the matches for the default list, a list is built from all values loaded in the workspace.
    This list is not saved, and thus reset every startup of GUI.

    Tag name column
    Here you define the tag name to be displayed for a particular metadata tag. These tag names don't have any influence on the actual tag names and you can write anything here, i.e. instead of "ISO", you can have "Noise maker" here.
    Tag names written here, can have different "behaviour" in case special character is used for their ending. For now, GUI uses following ending characters:

    # -if tag name ends with this character (see Flash# and Orientation# above), then the content of this tag will be displayed as usual. However, when modifying this tag, you need to enter a numerical value.

    * -if tag name ends with this character (see Artist* above), then that means, that value defined in Hint text will be used as default value for this tag. In this case, if you right-click on Metadata panel (when in Workspace view mode), pop-up menu appears and there's option Fill in default values -you get the idea, I hope.

    ? -if tag name ends with this character (see Geotagged? above), then that means, that you're not interested in the tag value itself, what you wish to see is, if a particular tag is defined or not.
    Notes: You won't be able to edit such a tag in Workspace view.
    Use 2 questionmarks ?? to show the value 0 as undefined.

    ± -if tag name ends with this character (see Type± in main screenshot above), then you'll be allowed to enter multiple values for single tag at once (i.e. keywords and similar). Of course, you can't use this feature for any tag, so read the (Iptc & Xmp) metadata documentation to findout what tags support multi-values.
    Btw. you can get the ± character with Alt+0177 (typing 0177 on numerical keyboard, while pressing Alt key).

    Note: I might use further special ending characters in future, so try to avoid their usage at the end (or start) of tag names.

    Tag definition column
    Here you define tags as recognized by ExifTool. And if needed, you can also add # character at the end of tag name -this will force displaying numerical tag value (try with -exif:Orientation# to see the difference). Of course, only one single tag can be defined per line.
    To separate group of tags in Workspace view, special "fake" tag is used: -GUI-SEP (see "About photo" on above screenshot, and "Special tag names").
    Note: It is recommended to prefix the tag names with a family 0, or 1, group name. (EG: -Exif:ISO, or -ExifIfd:ISO, not just -ISO).This ensures that marking the lines defined in the workspace works best.

    Special tag names:
    Hint text column
    Text entered here is your short "private" help, which will be displayed in GUI's status bar when you start modifying tag value:



    Auto complete options

    You can override the auto complete options for a specific tag, by setting a value different from default. Additionally you can specify a custom dropdown list, only used for this tag. Contrary to the default dropdown list, the custom dropdown list is saved to disk.

    Auto complete example of FNumber:



    How it looks in the Workspace by just typing a '1':




    I hope you can recognize the power of Workspace manager: YOU define any metadata tag you wish to change regularly.

    Exporting and importing settings


    The settings you make for the Workspace, ExifTool direct, File list, Custom view and predefined tags are automatically saved into ExifToolGUIv6.ini file when GUI is closed. So, next time you start GUI, those settings are preserved.
    Using the export and import functions, you can create a backup of your settings, to transfer them to another computer, or switch the view when switching media types. EG Camera RAW to Video.



    Program/Export




    Check the settings to include in the ini file.

    When you choose OK, you'll be asked where to save the file and you'll need to set the filename. By default, save directory will allways be the directory where ExifToolGUIV6.ini is saved; however, you can choose any other directory.
    And if you've messed with your Workspace inbetween, you can choose to import the settings from ExifToolGUIV6.ini file. Which simply imports all settings from last GUI session.

    When saving, the name of the Workspace definition file can not be ExifToolGUIV6.ini. You should use any name that reminds you on content, for example: MyWorkspace_XMP.ini.

    Program/Import


    When you choose Import, again, the default starting directory will be the one, where ExifToolGUIV6.ini is located. Starting with V6.3.8 all selected settings are exported in one (1) ini file. The Import function imports all settings found in the ini file.
    Upon succesful import a dialog is displayed, showing the settings imported from the file.





    Style


    Shows a list of available style/skins. To change the appearance of GUI.



    The Styles Silver, Green and Blue try to mimic the colors available in V516

    Options menu

    Don't make backup files

    -if checked (default), then ExifTool won't make "filename.ext_original" backup files. However, if you're not sure what you're doing, then you better uncheck this option.

    Preserve Date modified of files

    -no matter what I think about this, some prefer having this option checked.

    Ignore minor errors in metadata

    -by default, this option is unchecked. This results, in case metadata is not "as it should be", ExifTool will output warnings/errors messages when trying to modify such metadata. That is, ExifTool will refuse to write into file in case metadata is not in "perfect" condition, or if there's a danger that you might lose some metadata by modifying it.
    If this option is checked and metadata only contain "minor" errors (or only "minor" damage can occur), then ExifTool will do his job anyway.

    Show Exif:GPS in decimal notation

    -checked by default (because i.e. OSM Map uses this notation as well).

    Show sorted tags (not in Workspace)

    -if this option is unchecked (default), then metadata tags are shown sorted as defined internally in metadata. Many times however, it's quite hard to find particular tag in listing, so I can imagine, that this option will be checked most of the time.
    Obviously, this setting has no influence on Workspace view output (see Workspace manager above).

    Show Composite tags in view ALL

    Composite tags aren't "real" tags (their values are calculated from various existing tags), so they are shown optionally.

    Don't show duplicated tags

    It can happen that the same tag is defined more than once inside image file and by default, GUI will show all of them. If you don't like this behaviour, then check this option, but warning: some other tags might also not be shown!
    Try with Exif GPS data, for example.

    All above options will be saved when exiting GUI and thus be applied at next GUI start. Remaining options settings however, are only temporary (as long GUI is running) and are not checked by default:

    Show tag values as numbers

    Prefix tag names with ID number

    Group tag names by instance(-g4)

    -This can help you to identify duplicated tags when viewing in Metadata panel.

    API WindowsWideFile (requires Exiftool V12.66

    -Force the use of wide-character Windows I/O functions when the CharsetFileName option is used Default checked.

    API WindowsLongPath (requires Exiftool V13.02)

    -Adds support for Windows Long Path names. File names longer than MAX_PATH (260 chars). Default checked.

    API LargeFileSupport (requires Exiftool V12.88)

    -To process files larger than 2GB. Video's for example. Default checked.

    Link to all ExifTool API options

    Expand file names

    -When checked GUI passes the full path name to ExifTool. Default unchecked.

    Custom options

    -You can specify additonal options that exiftool should use. Expert option. Normally used with the Log Window.
    Possible use case is adding an API option -API WindowsLongPath=1

    Export/Import menu



    Export metadata into : TXT, MIE, XMP, EXIF, HTML files

    Each format has a different purpose: i.e. MIE is for making backup of complete metadata inside image file, HTML is meant for "studying" metadata structure, etc. So, try and see what suits your needs.

    Copy metadata from single file

    This will copy metadata from single source file (can be MIE file too) into currently selected files. That is, all selected files will be populated with the same metadata. After you choose the source file, you'll have a chance to reduce the amount of metadata to be copied:



    Notes:
    See also:
    Managing metadata how you can customize the predefined lists and tags.
    Tag-operations ExifTool documentation on Tags.

    Copy metadata into JPG or TIF files

    If a single (JPG or TIFF) file is selected (=destination), then metadata can be copied from any other file containing metadata (incl. MIE file).
    If multiple files are selected, then metatada will be imported only where source and target files have equal names.

    More details on how it works:
    As always in GUI, before you choose menu, you select one or multiple JPG (or TIFF) files. This are the destination files. Now you select the menu and, no matter how many destination files you've selected previously, you'll be asked to choose only one source file (see 2nd scenario). Now, there can be two scenarios:
    Scenario 1: If you selected only one JPG or TIF destination file:
    All metadata from source file will be copied into destination file. And while destination file can only be JPG or TIF, the source can be any kind of imagefile (raw, etc.). To put it simple: it's just copying all metadata from any kind of file into JPG (or TIF) file.
    Scenario 2: If you selected multiple JPG or TIF destination files:
    Now, you do remember by picking only one source file... in this case, you actualy didn't choose particular source file, but extension(!) of source files and folder where source files are. After executing, Exiftool only compares source/destination filenames, and where filenames match, metadata is copied. To put it simple: it's just copying all metadata between files which have equal filename (but can have different extension).
    Scenario 2 is very useful in case you have converted many raw files to JPG/TIFF and you know, that your raw converter doesn't copy all metadata from raw into resulting JPG/TIF files.

    Note: Because it's assumed, that the destination file has been modified inbetween (resized, etc.), not all metadata is desired to be copied. Because of this, you'll be asked, if you also wish to copy following tags:



    -in 99% of the cases, there will be no reason to check any of above option.

    Copy metadata into all JPG or TIF files

    This option is very similar to above. The difference is:

    Let's see an example, where we wish to update jpg files with metadata from raw files:



    1. Select any destination file inside MyJpg\Dir1 folder. If you select any JPG file, then only JPG files will be processed; if you select TIF instead, then only TIF files will be processed.
    2. Choose menu Copy metadata into all JPG or TIF files
    3. Click on Yes button when asked
    4. The File browser will appear, where you select any (source) file inside MyRaw\Dir1 folder. Note: You only need to select one file (to specify file extension).
    5. A panel will appear, where you confirm/check which "undesired" metadata you wish to be copied:



    Note: Even if none of above is checked, the rest of metadata in source files (Exif, Xmp, etc.) will be copied into destination files.

    That's it: by clicking on Execute, metadata will be copied into all files inside MyJpg\Dir1 folder (incl. Dir2 folder) from files inside MyRaw\Dir1 folder (incl. Dir2 folder).
    If we would choose No in step 3 above, then only files inside MyJpg\Dir1 would be processed.

    See also: Managing metadata

    Import GPS data from: Log files


    This option allows geotagging your files in batch by using log file of your GPS device (see here for supported GPS files).




    Step 1: Select log file of your GPS device.
    As usual in GUI, you first must select files you wish to geotag. In most cases, folder contents will contain series of "session" photos, so you will select all of them.

    Step 2: Check use all log files in directory if more than one log file for set of files exist.
    Let's say you've made a three day trip to Venice. In such case all photos will reside in single folder, but three (or more) log files will exist for that set of photos.
    Note: In this case, it doesn't matter which (of multiple) log file you choose. Important is, all log files must have the same extension.

    Step 3: Optional: Show on Map. Use this to visually check the log files..
    Step 4: Choose Reference DateTime value.
    Here you define which photo DateTime values to compare with those in log file.

    Step 5: Margin before or beyond Track. Change this if the time of your images is not within 1800 secs (default) of the track time.
    Step 6: Choose if TimeZone offset is needed to be taken into account.
    This is a funny one... The thing is, log files contain UTC time, while a camera is usually set to local time (where the photo is taken). In most cases, we are dealing with two scenarios:
    In both cases above it's assumed, that camera is set to local time of where photos are taken. It's also assumed, that when geotagging, your PC/laptop is set to your local (home) TimeZone.
    For further reading/questions see here.

    Step 7: Check Update Geo Location, if you wish to update Country, Province and City.
    Click on Setup Geo to control how these fields are filled.
    Note: These fields are also shown in the file list if it's set to 'Location info'.

    Import GPS data from: Xmp files

    By using this menu, you can copy GPS data from xmp sidecar files into Exif GPS section of selected image files.
    Note: It is expected that image and sidecar files only differ in extension. The name part however, must be equal. Examples of valid image-sidecar file pairs are:

    MyPhoto.jpg - MyPhoto.xmp or MyPhoto.jpg.xmp
    img_01.cr2 - img_01.xmp or img_01.cr2.xmp
    etc.

    Because image and sidecar files usually reside in the same folder (that is, they are mixed), it is a good idea to use the file type filter (which is set to "Show ALL files" by default). That is, if you wish to write GPS data into JPG files, you should set filter to "JPG files only". However, this setting is not required!
    Workflow is like this:
  • Sort files by file extension (so, for example, JPG and XMP files are grouped -not mixed) or use desired file type filter (i.e. "CR2 files only"). The only reason for doing this is: you can select (only) image files easier.
  • Select all image files you wish to modify.
  • After choosing menu Import GPS data from xmp file(s), you'll be prompted to select folder containing (xmp) sidecar files. In most cases, that will be the same folder where image files reside.
  • ...and that's it.

    Generic extract previews

    As you may know raw image files can also contain a JPG image, which serves for previewing raw image file content. In most cases, this JPG image is "as if photo would be taken in JPG mode" -while this is true for exposure and colors, resolution (pixel size) may differ (depends on camera).
    Because there are many flavours possible I created a generic function. It shows, for the selected file, what previews are available, and their sizes.
    You can check which preview(s) to extract and optionally perform autorate, and or crop.



    Generic import preview

    Use this option to update a preview. Before you choose this option select in the file list which files to update.
    In this dialog select which preview to update. Optionally rotate and or crop.
    When you click on Execute browse to the folder containing the previews. The previews should have the same base name as the raw files. Typically they are created by the previous option.



    See also the readme.Readme Lossless rotate_Import_Export previews.txt

    Modify menu


    Exif/Xmp: DateTime shift...




    Typical usage of this function is when you've forgotten to update the time of your camera when daylight savings has changed, or when you've moved to a different timezone. And all you photo's are 'off' by the same amount of time.
    Notes:

    Exif/Xmp: DateTime equalize...



    Exif: LensInfo from Makernotes

    This will fill Exif:LensInfo of selected file(s) with relevant values from Makernotes data (where possible).
    You can use this function if the Camera settings doesn't show LensModel, but the data is available in the Makernotes.

    Remove metadata




    Notes:
    See also:
    Managing metadata how you can customize the predefined lists and tags.
    Tag-operations ExifTool documentation on Tags.

    Update City, Province, Country from GPS coordinates

    This option can update the location info (Country, Province and City) for the selected files.
    The selected files should already be geotagged, that is contain lat and lon values.
    For every selected file a lookup is done using the selected provider. To reduce the nbr of calls a cache is used.
    In the dialog you can customize how the fields are filled.



    Notes:
    - If you use Gecode provider 'Exiftool geolocation' no internet connection is required.
    - The other providers use an external webservice, and thus there are some 'point of failures'.
    - If you open the log window you can see the rest requests and their responses.

    See also Readme GeoCoding.txt

    Managing metadata


    Starting with V6.3.5 the functions Modify/Remove metadata and Export/Import Copy metadata are capable of:




  • A button Preview has been added. It will give you a preview of the selected tag names, with their values.

  • Notes:



    Managing pre defined lists









    See here for more info how tag names are build up.





  • Ok will add the newly created tag after the selected tag.


  • Note:
    When you're done modifying the predefined tags, you can export and import them using:
    Predefined tags definition file Load/Save.

    Various menu

    File: Date created and modified as in...

    Use it, if you feel the need.

    This is a remark originally made by Bogdan. I would like to add my comment why it's not a good idea.
    If you have a backup tool that relies on the Date Modified, it will not notice that a file is modified. Example: Robocopy

    File: Name=DateTime+Name




    This function enables you to rename files, using any of the metadata dates in Exif, or XMP.
    Exif is mostly used for JPG, Tiff or Raw files, XMP for Sidecar files.
    To help you choose: first select a file in the file list, and a preview will be shown using the date found.

    You have multiple options to control how the new file name(s) should be. Gui tries to show a preview of the final result,
    but the actual renaming is performed by ExifTool.
    If you dont keep "Change Filename" "keep as is", renaming could result in duplicate filenames. The default is to add a "-1, -2", (%-c option of Exiftool) to the filename, but starting from ExifTool 12.97, you can also specify a custom sequence.

    JPG: Lossless autorotate + crop

    This will physically rotate selected JPG images according to Exif:Orientation value inside files.
    It uses a library NativeJpg by SimDesign B.V. to do the actual rotating. No external program is needed.
    In addition you have more control over how the function is performed.



    See also Readme Lossless rotate_Import_Export previews.txt

    Create Hash files...

    For all selected files Hashes will be computed and saved in a separate file with the extension of the selected Hash method.
    Gui supports these methods:

    Select left diff

    This option allows you to specify the file, or directory to use on the left side of the compare window.

    Show diff metadata

    Accessing the Show diff metadata form








    The Show diff metadata form opens.



    The Show diff metadata form has these options:

    It also offers to merge the changes between 2 files.

    Help menu

    Online Documentation

    -Opens this document

    Check versions

    -Check for updated versions of GUI and ExifTool

    About

    -Displays ExifTool and GUI versions and links.

    Preview/Regions

    The preview tab

    The preview tab shows a preview of the selected file. The preview is generated by W(indows) I(maging) C(omponent). WIC needs a codec to be able to generate the preview. For most commonly used file types Windows (11) provides codecs.

    The regions tab

    Clicking on the regions tab allows you to display and edit the regions, provided that a preview can be shown.



    Viewing:

    Adding/Editing:


    Notes:
    The X and Y values define the top left corner of the region.
    The W and H values define the width and height of the region.

    Deleting:

    Saving your changes:

    Keyboard shortcuts

    File list panel

    Changed with Version 6.3.6.


    The (dropdown) buttons on top of the file list replace the previous combo boxes. For the most part this should be self explanatory.



    Notes:

  • The text 'Standard file list', and 'Show All Files' will change if you select an other option.
  • The Breadcrumb bar is shown only when enabled in Preferences/Other.

  • Refresh button

  • Will update folder (directory) content in file list panel. This might be useful in cases you're interested on file characteristics changes (size, etc.) after applied operations.


  • Show all files button



  • Note: The screenshot shows the new V6.3.6 default file filters. They can be added with the button Defaults in the Configure form.

    The working principle is the same as the File list details button. You can choose a filter that has been defined. Selecting a filter will filter the File list. Like V6.3.5. and earlier.

    Configure opens the Configure file filters form:


    2 new functions have been added:



    File list layout




    Configure file filters




    This is the form that previously opened when you clicked Edit. Changed with V6.3.6:

    Note: The Configure file filters form also allows enabling sub folders in the file list, by adding ;/s. See: Enabling Subfolders in the File list

    Scanning and displaying sub folders in the file list


    Prerequisite
    Enabling
    Sample file filters:
    Typical usage*.jpg;*.mp4Show Jpg and mp4 in current folder
    *.jpg;*.mp4;/sShow Jpg and mp4 in sub folders
    All Files*.*;/sTime consuming!
    Advanced[A-Z][A-Z][A-Z][A-Z][0-9][0-9][0-9][0-9].jpg;/s IMGP0001.jpg
    (first 4 chars need to be A-Z, last 4 chars need to be 0-9)

    For more info on the file filter see the Embarcadero documentation on the Delphi function: MatchesMask

    Usage



    Sample detail mode:




    Developer note: Bogdan Hrastnik used JAM Shellbrowser for the file list, and folder list. I wanted to have sourcecode that did not rely on 3rd party libraries. The additional functionality needed for ExifToolGui required extending the standard Embarcadero TShellTreeView and TShellListView. It proved to be more difficult than I anticipated. By now it works satisfactory.
    A few small modifications to the Embarcadero source are needed. You can find the ReadMe and source code in GitHub. ReadMe ShellControls.txt

    Configure File list columns


    This is a totally new form and replaces the old 'Edit' button form.

    The form shown in previous versions:




    The form shown in V6.3.6 and later:




    The new form gives you more options.


    Before I explain this form, I first need to explain how Gui reads the metadata for the file list. It uses 3 possible methods.

    Column Read Mode

    System: This read mode is used for the Standard file list. Basically this reads the standard explorer-like fields like Name, Size, item-type etc. (Actual names are translated by Windows)
    This read mode defines fieldnames 0..6 (Column Command)
    You can not customize the standard file list, but you can use the system field names in Internal and User (column Type)

    Internal: This read mode uses internal Delphi/Pascal code to read the metadata directly. (The original Developer Bogdan Hrastnik created this, and I have extended it)
    The advantage of this read mode is that it is much faster compared to ExifTool. This is because Delphi code is compiled to native assembler, where-as ExifTool uses Perl, and Perl is an interpreter language. Plus the fact that a constant communication between Gui and ExifTool is needed, makes it slower.
    The disadvantages are that not all file types can be read, and it can only read a subset of the ExifTool fields.
    Generally speaking use this read mode for images like Jpg, Tiff, camera raw files like Cr2, Cr3, NEF, PEF and DNG. And you only need basic Exif, Ifd0, and XMP data.
    In Gui 6.3.5 and earlier this mode was used for 'Camera details, Location Info and About photo'.

    ExifTool: This read mode uses ExifTool. You can use all fields and file types that ExifTool supports.
    Performance has improved, by allowing multi-threading in 2 scenarios.
    When you select all files (CTRL/A), or when you sort on a column other than name.

    A special mode Internal+ExifTool can be used to first try the internal mode, and if the file is not supported, use ExifTool as a backup. This replaces the Gui V6.3.5 option in preferences 'Use ExifTool for unsupported file types (slower)'

    Column Type

    System: There is 1 file list of this type. You can not delete/change it. The name is translated to the Windows language in use.
    Internal: For these 3 file list you can change the read mode, and you can add/delete/edit the fields.
    User: The user file lists replace the 'User Defined' from V6.3.5 and earlier. Additionally you can change the read mode, reorder the lists, and you can define as many lists as you like. But only the first 6 have a unique icon.

    Defining the Fields




    For other read modes, a panel on the right pops up, showing all the available internal fields.




    Notes:
    The Columns Option and Align Right are used to specify formatting. See 'Camera Details' for examples.

    Backup If you choose the value 'Backup' then this value will not be displayed in the file list, but the value will be used if the previous command had no value. See 'Location info' for an example. (If ExifIfd:DateTimeOriginal has no value, the value from QuickTime:CreateDate will be shown)

    SampleValue The value found in the sample file.

    Various remarks



    ExifTool direct panel

    By clicking on ExifTool direct button, you get an input field where ExifTool commands can be entered and executed:



    StayOpen/Classic Starting with version 6.2.0 you can choose how the commands are executed.
  • StayOpen. Send the commands to the ExifTool.exe program using stay open mode. This is the default, and doesn't start a new instance of ExifTool.exe.
  • Classic. Starts a new instance of ExifTool.exe, sends the commands, and waits for ExifTool.exe to complete. This was the default in previous versions. Retained for compatibility reasons.

  • Notes:
    If you're a bit familiar with ExifTool usage, then here, you can execute commands not covered by GUI. Usage is very simple:
  • select one or more files
  • enter desired command and press Enter key
  • Btw. you can close ExifTool direct mode by clicking on ExifTool direct button again, or Esc key while you're in edit line.

    Some examples for exercise:

    -Exif:Copyright<Exif:Artist -copy value of Exif:Artist into Exif:Copyright
    -Exif:DocumentName<$filename -save filename into Exif:DocumentName tag
    -Xmp-aux:All= -delete complete Xmp-aux section
    -Exif:Artist="My Name" -it's obvious, isn't it?
    etc... You can find more info here, on the Home page of ExifTool.

    As mentioned, selected files are automatically added to the end of command, so you don't need to type them. However, there are cases, when you should not select source file, i.e.:
    -tagsfromfile MyPhoto.jpg Result.xmp
    -here, source file "MyPhoto.jpg" can't be placed at the end of command, so selecting it in file list isn't what you want. If you select it anyway, then (in this case) xmp file will be created first (as expected), and after that, xmp file content will be added back to selected file -that's what you don't want.
    Tip Use Select None to make sure no files are selected.

    If you wish to modify all files inside currently selected folder, including files in subfolders, then you should use the -r option. Some examples:
    -r -Xmp:all=
    -deletes all Xmp metadata from all files inside currently selected folder and subfolders.
    -r -Exif:Artist="My Name" -ext jpg
    -set Exif:Artist tag value to My Name for all jpg files inside currently selected folder and subfolders.
    -r -Xmp:City=Paris -ext jpg -ext tif
    -set Xmp:City tag value to Paris for all jpg and tif files inside selected folder and subfolders.
    Note: If more than one extension is specified, then (processed) files counter only counts number of files defined by first file extension. Meaning: if more than one extension is specified, files counter might not reflect actual number of files.

    Note:
    You can't "redirect" output in ExifTool direct. If you need to do that (i.e. extract thumbnail image), then you should use ExifTool directly (that is, outside GUI). You can however use the REC button to save the output from ExifTool to a file.

    Using predefined ExifTool commands

    There's one predefined ExifTool command in GUI, so you can see what's all about. To access it, you click on combo-box (blank on above image) and choose it:



    Once command is chosen, you can execute it by pressing Enter key (while you're in edit field). If needed, you can modify displayed command and execute it, without actually changing predefined command.

    Modifying predefined commands

    By clicking on Edit predefined button, panel increases with additional options:




    ^Delete -deletes currently selected predefined command permanently.
    ^Replace -replaces currently selected predefined command (i.e. after changes have been made).
    ^Add new -adds new command to the end of the list.
    ^Default -makes currently selected predefined command selected by default each time GUI starts.
    Deselect -sets predefined commands combobox to "none selected" state.

    Note: Don't use the = character in the Command name field! Because in INI files, this character is used as a separator between the command name and the actual command.

    Using args files

    args file is a text file, usually containing several ExifTool commands, which are all executed by simple call of single args file. Here's a example of args file, containing two commands, written by Notepad:
    -Exif:Artist=My Name
    -Exif:Copyright=C2024 by My Name
    
    Let's save this text as "MyData.args".
    Note: File must be saved in the same folder where exiftool.exe is saved (or specify the full path to the args file).
    To execute above commands in GUI (after desired image files are selected), we need to write the following Command into ExifTool direct panel:
    -@ MyData.args
    -@ "c:\path to MyData\MyData.args"
    -and press Enter key.
    (Enclose in "(double quotes) if path/filename contain spaces)
    ExifTool full source version (can be downloaded on top of ExifTool main page) contains several predefined args files, which are meant for transferring "similar" metadata between sections. One of them is (for example) "xmp2iptc.args" file, which copies all "compatible" metadata from Xmp to Iptc section. And as said, there are more of them.

    Show Log Window button

    When using ExifTool direct mode, any results are written into the Log window when it is opened.
    If, for example, we select two files and execute following ExifTool direct command:
    -e -gps:all
    
    -we will get something like this:


    Note: In case of errors, the Log window with relevant messages automatically appears after ExifTool ends processing files.
    Starting with version 6.2.0 the Log window will show the last 10 commands. In the top panel you can select the command issued,
    on the left you will see what was sent to ExifTool, on the right you see the output it generated and in the bottom panel the errors, if applicable.
    To help identifying the commands an execnum is send to ExifTool, you can see this in the command window 'execute14 and -echo4 {ready14}',
    Exiftool will return this in the Output and Error.
    GUI uses execnums from 10-99, and when 100 is reached it is reset to 10.
    In the top you will see a checkbox 'Show all commands'. By default only the commands issued from Direct mode, or that return an error, are displayed.
    If you check this also the commands that GUI uses internally are displayed.
    With the buttons Cmd prompt and PowerShell you can generate a .cmd or .ps1 script to replay the commmands.


    Metadata panel



    By clicking on any button on top row, relevant metadata will be shown. That is, the top row is for displaying metadata only.
    In the second row, there's only one button: Workspace.
    As explained above (see Workspace manager menu), Workspace is fully customizable: user can define which tags he wishes to be listed here.
    And the value of any tag listed in Workspace can be edited at will.
    Note: The last selected button (Tab) will be remembered and restored at next startup. If selected in preferences.



    In the Find edit box you can enter a text, press Enter and the first line containing that text in 'Tag name' or 'Value' is highlighted.
    Pressing Enter again searches for the next occurence.

    Edit metadata in Workspace



    Here's how to edit metadata in Workspace:
    Notes:
    If you've changed your mind and don't wish to change particular tag, then select that tag, right-click (to show pop-up menu) and choose Undo selected editing -this is useful in cases when many tags are already edited and not saved.
    If you've changed your mind completely (don't wish to apply any changes), then just click on Workspace button and changes will disappear.
    Note: Changes are lost in most cases when you click elsewhere outside Metadata view area.

  • When you're finished with editing metadata values, click on Save button.

  • Some tag values may require a bit longer text to be entered (just a bit longer, please). To do that more comfortable, click on Large button and you'll get some more space:


    Keyboard shortcuts

    These keyboard shortcuts are recognized in the Workspace.

  • Not all lines in the workspace can be edited. E.G. -GUI-SEP lines, or tag names ending with a ?

  • Editing tags which names end with ± character

    This sign means the tag can have multiple values defined (where keywords is most well-known).
    Posibilities for entering values for such tags:
    You can also add multiple keywords at once, for example by entering: +nature+daylight+sky
    or you can delete multiple keywords at once, for example: -water-tree

  • Note: As you know by now, you can't enter keywords which contain a + or - sign.
    Advice: Don't write stories into keywords, by it's definition, a keyword is meant to be a (single) word.

    Pop-up menu in Metadata panel

    As mentioned, if you right-click on any tag shown in Metadata panel, a pop-up menu will appear:

            

    Note: Not all options are available all the time.
    Note: Tag names will appear colored (as in image above right) only if Metadata language in Preferences is set to ExifTool standard (short).

    Fill in default values -in Workspace only
    By choosing this option, all tags which names are ending with * character, will be populated with default values (as defined in Workspace manager).

    Undo selected editing -in Workspace only
    As long as an edited tag value isn't saved (tag name has a yellow background), you can "undo" the changes for the selected tag.

    Add tag to Workspace -in Exif, Xmp and Iptc view only
    By using this option, you can easily add any Exif, Xmp or Iptc tag into the Workspace. Selected tag will be added at the end of existing Workspace list of tags.
    Once tag is added, you can make further customisations by using the Workspace manager.

    Remove tag from Workspace -in Workspace only
    Do you really need to edit so many tags? Ok, it's your life :)

    Note: If you checked Double Click adds/removes tags in Preferences/Other you can also use Double click to Add/Remove Tags from the Workspace.

    Add tag to Custom view -NOT in Workspace
    Adds selected tag to be shown in Custom view.

    Remove tag from Custom view -in Custom view only.
    It is a good practice, to keep only those tags in Custom view, on which you are temporary interested. Once number of tags listed here becomes too long, the meaning/purpose of Custom view is lost.

    Add tag to File list Details -in Exif, Xmp, Iptc and All view only
    This command adds selected tag into File list Details: User defined columns.

    Mark/Unmark tag -NOT in Workspace
    As name implies, this option serves to mark/unmark tags of interest. Marked tag name is shown in red color in any view (except in Workspace), so you can locate it easier later.
    Note: This selection is only available if Exiftool standard (short) language is selected in Preferences.

    Copy Value to Clipboard
    Copy the value of the selected line to the Clipboard.

    Copy Tag name to Clipboard
    Copy the Tag name of the selected line to the Clipboard.

    Insert Tag name in to ExifTool Direct - Only when ExifTool direct is active.
    Copy the Tag name of the selected line to the ExifTool direct command.


    OSM Map panel



    Notes:
    Show on map button
    If selected images are geo-tagged (contain GPS data), clicking this button will display their geo-position on the map.
    Starting with version V6.3.1 you can also show track logs on the map, if the selected files(s) contain(s) track logs.

    Notes:

    << Back and Forward >> buttons
    Selected images are shown as a hyperlink. You can use these buttons to go back to the map. Hyperlinks work only for filetypes supported in your browser.
    Jpg usually works, raw formats likely not.

    Get location button
    Tries to get the location (City, Province and Country) from the currently selected center of the map.
    Notes:
    Find field
    For finding places easier...

    Notes:

    Home button
    Moves the map cursor to your predefined position.
    Clears any tracks shown on the map.

    Set^ button
    Current map cursor position becomes Home position.

    Geotag files button
    By clicking on this button, all selected files will be geotagged with current map cursor position.
    Notes:

    Readme GeoCoding.txt

    Final words


    All credits go to Phil and Bogdan. A quote from Bogdan that still applies:
    Well.. that's it.
    P.S.: Don't blame me for my English grammar -it's not my native language.

    Frank
    Modified on January, 2026

    You may find additional info in the ReadMe files: