Reading and writing metadata from multimedia files
An ExifTool GUI
Several projects have attempted to make the complex system of EXIF tags more accessible with a graphical user interface. At least three of these projects can be found in the Arch Linux repositories:
- DigiKam is up-to-date and works quite well, but sometimes it uses special tags that are not fully compatible with ExifTool's tags.
- PyExiftoolGUI is a Python 2-based (now obsolete) application that causes problems during installation.
- jExifToolGUI [5] ports pyExifToolGUI to Java. The developer provides a Debian package, an AppImage, and a JAR archive with the current version [6]. The universal JAR should launch on all platforms.
Please note that jExifToolGUI's developer, Harry van der Wolf, has been rapidly implementing many new features during 2020. The features described here are as of Version 1.4.
The jExifToolGUI interface (Figure 1) is fairly easy to use. The Load Directory and Load Image buttons open images. To view the embedded preview in RAW files, jExifToolGUI requires the dcraw
command-line program. A double-click on a file name or a thumbnail opens the image in a display program of your choice.
The five tabs on the right side of the program window organize jExifToolGUI's actions. View Data only displays an image's data, Edit Data lets you edit some of the data, and Copy Data supports transferring data between images. In Your Commands, you can define and execute your own ExifTool command lines. The Exiftool Database tab helps you search for tags.
When you start, the View Data tab is active: In the right-hand pane, with the All button selected, jExifToolGUI shows you all output generated by ExifTool when you call it with a file name and without options. Usually this results in far too much information, so it is often more useful to limit the output to certain groups.
You can limit output with the Common Tags button, which limits the information accordingly in the field to the right. Many images do not actually contain information in all groups, so the output remains empty. The By Group and By Camera options have similar effects.
Editing EXIF tags is one of jExifToolGUI's main focuses. The Edit Data tab has seven categories that give you direct access to the data. Using the first tab, Exif, you can load the standard EXIF tags from one image onto the clipboard and then transfer them to all selected images.
The xmp tab is used for editing XMP tags. The tags summarized here let you describe the subject, not the image's technical properties. In particular, the Keywords tag is accessible here; you can enter several keywords separated by commas.
The gps tab lets you manually transfer the location data of one image to several others. To do this, first select the source image and copy the data to the buffer with Copy from selected image. Then select the target images and transfer the buffer's contents by selecting Save to selected image(s). Open MapCoordinates.net gives you an additional option for defining an image's coordinates via the web browser.
Geodata from external tracks can be added to the images in the Geotagging tab. To do this, either load a folder with images in advance or use the currently loaded images. Then load a file with the track data in a format that can be interpreted by ExifTool in the GPS log file field.
Geosync time lets you compensate for the time offset between the camera and tracker as described above. Write geotag information to image(s) then writes the position data to the image files (Figure 2).
Additional tabs under Edit Data (Gpano, Lens, and XMP_IPTC_String+) serve very specialized purposes.
The Your Commands tab lets you execute any command line. The developer was planning significant changes for this dialog in upcoming versions, including an additional history.
The last tab Exiftool Database (Figure 3), which is more for advanced users, grants access to the internal ExifTool tag database, with all currently known tags of all families and groups. This is especially easy to use thanks to the Search like input box, which performs a full text search. The By Group and Camera make buttons let you restrict the results. jExifToolGUI emulates the internal database in the form of an SQLite database, which enables structured queries.
Conclusions
As Phil Harvey moves ahead with ExifTool's development, he is maintaining compatibility with new standards and image formats. However, this development inevitably increases the complexity, making it more difficult to learn. So far, however, Harvey has succeeded in ensuring backward compatibility. Command lines that used to work successfully in the past will usually still work today.
Thanks to the jExifToolGUI user interface, which is also progressing in giant leaps, working with ExifTool is easier, especially for less experienced users.
Infos
- ExifTool: https://exiftool.org
- Additional documentation and resources: https://exiftool.org/#links
- Tag names: https://exiftool.org/TagNames/
- Geotag examples: https://exiftool.org/geotag.html#Examples
- jExifToolGUI: https://github.com/hvdwolf/jExifToolGUI/
- jExifToolGUI releases: https://github.com/hvdwolf/jExifToolGUI/releases
« Previous 1 2
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Linux Servers Targeted by Akira Ransomware
A group of bad actors who have already extorted $42 million have their sights set on the Linux platform.
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs