[Digikam-devel] libkexiv2 interface & exif composite tags

Jens Müller tschensinger at web.de
Thu May 6 18:13:59 BST 2010


Hi all,

some tags are stored as an array, so you have to select a index for a specific 
value, examples are:
- Exif.Image.LensInfo is of type rational[4]
- Exif.Image.AsShotNeutral is of type rational[3]
- Exif.SubImage1.CFAPattern is of type Byte[4]

Current libkexiv2 has a method the get a component of rational-array 
(getExifTagRational), but set method is not capable of. Also methods for set 
and get Longs and Strings are not capable of a specific index. So is there a 
plan to clean that up?


One thing that would also be wise is something like exiftools composite tags, 
I think. Currently every component is parsing makernotes on their own when no 
standard exif.photo or exif.image tags exists or do it not. 
This is needed as for example older canon dslrs have metering mode and 
exposure program only in makernotes on a own coding, other samples are lensid 
strings or something like subject distance which is in nikon images only in 
makernotes and have to be decoded be a specific function. 
So why not bundle this knownledge to a middle-layer - composite tags. The 
questions is also where to implement that middle layer, libkexiv2 or exiv2?

Regards, Jens



More information about the Digikam-devel mailing list