Here is my contribution to the GIMP 2.6 roadmap: a description of the
remaining tasks related to the metadata viewer/editor and some
enhancements for the jpeg plug-in (and other plug-ins).

In the following list, the tasks marked with a "+" are the ones that I
would like to include in 2.6, while the tasks marked with a "-" will
be postponed until after 2.6.  These optional tasks are listed here for
completeness and they could still be included in case there is a
sudden rush of volunteers willing to contribute to these improvements.

* metadata core (stuff that does not need a user interface):
  + migrate some parts of the metadata core to a library that can be
    used by the main app. as well as some plug-ins
  + clean up the PDB interface
  + convert EXIF to XMP
  + convert XMP to EXIF
  - convert IPTC to XMP (IPTC Core for XMP)
  - convert XMP to IPTC
  - rewrite the XMP parser and the internal data model

* metadata viewer/editor (user interface)
  + implement the "user-friendly" tabs in the metadata editor
  - make the tabs configurable, similar to Adobe's XMP panels
  - easy merging of XMP presets from a drop-down list or something
    similar (e.g. to apply a Creative Commons license or to set
    a group of properties such as creator, publisher, etc.)
  - allow the creation of such XMP presets
  - warn the user if the metadata states that editing the image is not
    allowed (XMP Rights Management)
  - implement history tracking for XMP Media Management
  - allow creative editing of the embedded thumbnail

* jpeg plug-in
  + simplify the user interface: the default view should show only a
    selection between a few options (e.g, "high/medium/low" or 0-12
    like in Photoshop) combining both quality and subsampling; move
    the old 0-100 "quality" slider inside the advanced options
  + remove the prompt for EXIF orientation: it should always be done
  - allow lossless or nearly lossless saves if only a few changes have
    been applied to the original image (e.g. 90 degrees rotation or
    minor edits in a limited area)

* all file plug-ins
  + handle metadata correctly (at least for jpeg, tiff, png)
  + make sure that the last used settings are saved in a parasite
    attached to the image instead of using global "save_vals", etc.
  - make it easy to save and restore settings (more than one set) in
    case the user wants to apply the same settings to several images

In case the description or purpose of some of these items is not
clear, here are some additional comments:

The metadata editor uses XMP internally, because XMP is a superset of
EXIF, IPTC and other metadata standards (or de facto standards).  The
XMP parser and generator are already included in GIMP 2.4.  I also
wrote some code to convert from/to EXIF, but I did not finish it and I
think that it is better to rewrite it from scratch anyway.  The
problem with EXIF is that although the basic features are easy to
parse, there are dozens of special cases and broken implementations to
take care of, especially for the handling of MakerNotes.

As we discussed already several months ago, it would be useful to move
some parts of the metadata handling code into a library that can be
used directly by other plug-ins or by the gimp core, instead of
invoking the metadata plug-in as in 2.4.  It should be possible for
the user to keep the "Image Properties" window open at all times and
to see the changes in real-time (resolution, size, comment, etc.).  In
order to allow these real-time updates, the code displaying this part
of the image metadata should be part of the gimp core.  This does not
mean that all metadata handling should be done in the core: it would
also be possible to have only the "viewer" part and the basic metadata
handling in the core but keep the "editor" part as an external
plug-in.  Another option would be to keep all that out of the core but
change the plug-in API so that it allows a plug-in to remain attached
to an image while other plug-ins are running, and change the protocol
so that it allows a plug-in to get real-time updates about what
happens to the image.

Regarding the user interface and the options (probably post-2.6) to
make tabs configurable or to choose XMP presets from a list, I think
that it is easier to understand if you look at these images:
Note that in these images, the "Creative Commons" panel is an
extension that can be downloaded from the CC site (it's a simple XML
file) and it shows up among the other XMP panels, with the appropriate
widgets for editing specific parts of the XMP metadata.  See also:

There are also some improvements for the JPEG plug-in.  As I mentioned
some time ago, I would like to hide the current "quality" slider among
the advanced options, and replace it by a smaller selection of
pre-defined quality levels.  I have also thought about some nice
tricks that would allow almost lossless re-saving of JPEG images, but
I am not sure that I would have time to work on that in the 2.6

Gimp-developer mailing list

Reply via email to