RSS/Atom feed Twitter
Site is read-only, email is disabled

Proposal for a GIMP metadata viewer/editor (EXIF/IPTC/XMP/...)

This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

2 of 2 messages available
Toggle history

Please log in to manage your subscriptions.

Proposal for a GIMP metadata viewer/editor (EXIF/IPTC/XMP/...) Raphaël Quinet 17 Aug 15:58
  Proposal for a GIMP metadata viewer/editor (EXIF/IPTC/XMP/...) Raphaël Quinet 23 Aug 16:46
Raphaël Quinet
2004-08-17 15:58:20 UTC (over 19 years ago)

Proposal for a GIMP metadata viewer/editor (EXIF/IPTC/XMP/...)

Hi all,

As some of you may remember, I started working on a metadata/parasite editor a long time ago (bug #61499, bug #56443, bug #94416) but lost most of it in a disk crash during a backup (doh!). Since my new digital camera is begging for better metadata support in the GIMP (starting with the EXIF orientation tag, bug #121810) I re-started that work from scratch and built a new metadata viewer and editor. I worked on that while I was away from the 'net so I did not announce it earlier, but I tried to design the viewer/editor according to what had been discussed on this list and in Bugzilla since about three years.

The relatively new thing is that I based almost everything on the XMP model (Extensible Metadata Platform from Adobe, based on RDF/XML) because XMP supersedes IPTC (used by Photoshop 6 and earlier) and includes EXIF (used by almost all digital cameras and supported by many programs).

The code is not ready yet and I don't expect to have time to make a version ready for testing before next week, but I created a page that describes what it does, including some screenshots: http://wilber.gimp.org/~raphael/metadata/ I would like some feedback about that, and any help about the open issues mentioned in the page would be more than welcome.

Among the open issues, there are a few on which any GIMP contibutor could comment: naming of parasites, how to support the old "gimp-comment" parasite, should it support saving the old IPTC format without XMP?

But there are also some more technical issues for which I would need some help from GIMP/gtk+ hackers: how to handle multiple language variants for some properties, how to support viewing and entering of these in the treeview widget? Even for the basic case, how should I support multi-line input in the treeview?

If I am heading in the wrong direction or if I have overlooked something, please tell me. I don't want to waste my time doing the wrong things if I don't get any feedback.

-Raphaël

Raphaël Quinet
2004-08-23 16:46:06 UTC (over 19 years ago)

Proposal for a GIMP metadata viewer/editor (EXIF/IPTC/XMP/...)

On Tue, 17 Aug 2004 15:58:20 +0200, Raphaël Quinet wrote:

As some of you may remember, I started working on a metadata/parasite editor a long time ago (bug #61499, bug #56443, bug #94416) but lost most of it in a disk crash during a backup (doh!). Since my new digital camera is begging for better metadata support in the GIMP (starting with the EXIF orientation tag, bug #121810) I re-started that work from scratch and built a new metadata viewer and editor.

[...]

http://wilber.gimp.org/~raphael/metadata/ I would like some feedback about that, and any help about the open issues mentioned in the page would be more than welcome.

[...]

If I am heading in the wrong direction or if I have overlooked something, please tell me. I don't want to waste my time doing the wrong things if I don't get any feedback.

Well, I didn't get much feedback through this list, but I would like to thank Sven and Jimmac who discussed some issues on #gimp and Alan who also sent me some suggestions. During the weekend, I rewrote the XMP parser and I modified the code of the metadata editor so that it works better when all metadata is stored in a single GIMP parasite, using accessor functions so that other plug-ins can get/set the metadata through the appropriate PDB calls.

There are still several open issues, but there at least two things for which I would need some help as soon as possible so that I can continue and hopefully finish the implementation: XMP files for testing the parser and some suggestions on how to exchange structured properties through the PDB.

* XMP files for testing the parser: the new parser should be able to handle most (hopefully all) files that conform to the XMP specs, including some annoying features such as properties with qualifiers, language alternatives, etc. However, I have only been able to test the parser with the examples given in the XMP specs and some test files that I found (such as the Creative Commons templates for Adobe products). I would be very interested in getting more test files, either as standalone *.xmp files or as XMP embedded into some image formats (JPEG, TIFF, PNG) or even PDF or Adobe Illustrator files.

If you have access to a tool that can generate XMP metadata (such as Photoshop 7 or CS, Illustrator 10 or later, ...) then please send me some files or tell me where I can fetch them. I am very interested in files that have one or more of the following features: - containing a description, title or rights statement in multiple languages (please also tell me how your tool allows you to enter multiple languages such as en_US, fr_FR... and how to select which one becomes the default);
- containing metadata converted from EXIF; note that I mean XMP files with "exif:" and "tiff:" schemas converted from EXIF, not just files with metadata in a raw EXIF block; - containing XMP Media Management metadata (e.g., xmpMM:History); - containing some properties with qualifiers, such as a list of authors in which one is labeled as "composer", the other as "lyricist", etc. (please also tell me how you can enter this). In all cases, please tell me the name and version of the tool used to create the image or the metadata because there have been some changes to the XMP specs and I want to be able to support both the old and new versions. For example, the "exif:Flash" property is defined as a structed type in the current XMP specs (on page 68) but is shown as a simple integer value in some examples so I would like to know what can be seen in XMP packets from various tools.

You can send the files or the link to the files directly to me by email (do not send files to this list!) but be sure to include both "GIMP" and "metadata" in the subject if you want to get past my spam filter. ;-)

* How to exchange structured properties through the PDB: as explained in http://wilber.gimp.org/~raphael/metadata/#Issues I don't know what is the best way to pass the metadata via the PDB. Simple types could be passed as STRING and structured types could be passed as STRINGARRAY, but the annoying thing is that the XMP specs allow any property to get optional qualifiers. I could just discard the qualifiers (I don't know if they are used often in practice) but that wouldn't be very nice. I could also pass XML fragments instead of simple strings, but that would force all scripts and plug-ins to be able to parse XML if they want to be able to get or set metadata. This would be very annoying for Script-Fu or Tiny-Fu.

I also don't know what is the best way to pass the array of thumbnail images for the xmp:Thumbnails array. XMP says that it should be an array of structures containing width, height, format and image as a base 64 encoded string. It would be nicer to be able to pass one or several DRAWABLEs instead of big strings. That would probably require separate PDB calls just for the thumbnails.

Any suggestions would be greatly appreciated because I'm a bit stuck for the moment.

I hope that I will get a bit more feedback this time. :-) Anyway, even if the code of the plug-in is not ready yet due to the problems with the PDB calls, I may be able to release the XMP parser first because it should be easy to package it separately (it only depends on glib).'

-Raphaël