On Mon, 04 Feb 2002, Lutz Müller wrote: > On Mon, 2002-02-04 at 14:29, Dave Neary wrote: > > >Thereare a couple of other libraries which do pretty much the same > >thing - > >see the relevant bug numbers in bugzilla (not sure what they are right > >now). > >I haven't had a chance to look closely at this, but it looks good. > > There is python stuff, a C++ library, lots of programs, but no plain C > library. Plus, everything out there is designed for _extracting_ EXIF > data, not _editing_ it. This is why I designed libexif(-gtk).
From the GIMP's point of view (or at least from my point of view), editing and importing/exporting EXIF data are two different things that should not be mixed.
Importing and exporting EXIF data (or other meta-information) should be done by the file plug-ins, as explained in this bug report: http://bugzilla.gnome.org/show_bug.cgi?id=56443 The basic idea is that each file plug-in that supports metadata can convert the EXIF data (or other meta-data) to/from GIMP parasites. When saving a file (e.g., TIFF, JPEG or PNG), the corresponding file plug-in would try to convert as many of these parasites as possible to the appropriate format (EXIF or TIFF/EP). Note that it is important that each individual item in the EXIF data is converted to a separate GIMP parasite instead of importing the whole EXIF data in one big chunk because some parts of the EXIF data must be modified when the image is re-saved (also, some file formats do not support all fields so it is easier to work with them if they are saved in separare parasites).
Editing the metadata should be done by the core of the GIMP or by a separate plug-in. See this other bug report (and the ones linked from it) for a description of what is needed: http://bugzilla.gnome.org/show_bug.cgi?id=61499 This feature should be accessible through <Image>->File->Properties... and it would be used to edit the image comment, resolution info, etc.
It should probably not be limited to the EXIF data, though. It should also be able to edit other GIMP-specific properties of the image. The main idea is to have a more user-friendly and more powerful version of the parasite editor.
> So I am the third person looking at it :-) > > I just don't know how to handle the dependency on libexif(-gtk). You > know, libexif itself is quite small and could be included in gimp > (although I'd keep it separately), but libexif-gtk is getting bigger and > bigger as more widgets are added. Therefore my question: Is it ok to > introduce a (conditional --enable-exif) dependency on libexif(-gtk) for > gimp?
Well, I don't know what is the best thing to do. libexif should probably be integrated directly into the JPEG plug-in (and maybe adapted for the TIFF and PNG plug-ins) but I assume that large parts of it would have to be rewritten in order to use GIMP parasites as the storage format for all data.
The user interface (libexif-gtk) could be a good start for a generic metadata editor ("file properties") in the Gimp, but again I am afraid that large parts of it would have to be rewritten in order to remove the dependencies on EXIF and work from GIMP parasites.
It would be very nice if you could re-write your code to have it based on GIMP parasites because that would provide some features that have been missing from the GIMP for a long time.
-Raphael