Cyrille Berger cberger at
Mon Jul 9 13:18:29 CEST 2007


>  Cyrille, is it
> okay if I re-instate your code where needed?

It's (L)GPL you can do whatever you want with it :)

> As for metadata, I'm not sure of our requirements -- I'll have to read the
> kde metadata documentation on techbase & the exif and xmp specs first, as
> well as find out which libraries are most useful to us.

I just don't want to work on that code anymore for the moment (not that there 
is much to do on it for the moment anyway, except maybe the filtering and 
validation), that doesn't mean I won't try to help for now.

For the record, library to en/decode metadata:
- libexif (use in 1.5/6, C API, badly documented) read/write EXIF tags
- libexiv2 (previously used in trunk, and used by digikam, Gilles is also 
contributing to it, C++ API) read/write EXIF/IPTC tags (and very likely in 
the near future XMP)
- libkexiv2 it's a convenience API around libexiv2, it's not of much use for 
an extensible metadata framework as the query of tags is hard coded as 
- exempi (used in OpenRaw, C API) read/write XMP tags (it's a wrapper around 
the horrible XMP-SDK from Adobe)
- libiptcdata read/write IPTC

My opinion is that libexiv2 fits the need of Krita, and as XMP is hot topic 
for digikam as well, I am pretty sure that Gilles will deliver the promise of 
having XMP in libexiv2. If that's not the case, the backup solution to use 
exempi is possible. I don't expect that part to be much work.

As for the status in Krita:
- jpeg support for Exif/IPTC was done
- the editor was quiet advance (but I have no problem on keeping working on 
that plugin)

What was lacking:
- png support
- merging mechanism
- validation
- filtering

As for Nepomuk, the problem is that the Nepomuk project is still very young, 
and still a little bit changing, and for instance, graphism metadata are very 
badly handled, but as I have raised those issues to some of the nepomuk 
folks, this might change in the future. An other problem is that they are 
more concerned by reading metadata than writing, while for an imaging 
application, both are a *hard* requirement.

Cyrille Berger

More information about the kimageshop mailing list