[Digikam-devel] better metadata support : added exiv2 depency ?

Thorsten Schnebeck thorsten.schnebeck at gmx.net
Wed Feb 15 08:55:58 GMT 2006


Am Dienstag 14 Februar 2006 20:50 schrieb Caulier Gilles:
> Le Mardi 14 Février 2006 20:34, Dennis Gnad a écrit :
> > > - RAW Exif/IPTC extraction
> >
> > Probably you already heard of it. Exiftool
> > (http://www.sno.phy.queensu.ca/~phil/exiftool/) seems very
> > good and handles quite much (at least it handles the exif of
> > my nikon D70 raw files, and on the site there are many many
> > others listed, have a look at it!). The only problem could be
> > that it is written in perl.
>
> Yes i know it. The Exiftool tags doc is excelent, but i don't
> understand why this tool hasn't been written in C/C++ for any
> performance reasons.

(ok, another try ;-) )

simple question, simple answer:
****
e4l: How come you started writing ExifTool?

PH: It evolved from a few routines I wrote for an image 
cataloguing utility 
(http://owl.phy.queensu.ca/~phil/icat/) that I wrote initially to 
maintain the images in the SNO web site in 2001.  That was my 
introduction to Perl -- before that I was mainly a C++ programmer.  
Since then, I have done some rather substantial projects in Perl, 
and have really come to enjoy programming in this language.  Now 
I find it hard to live without the automatic memory handling, 
hash lookups, and regular expressions.

e4l: ExifTool is a Perl library with a comand line tool as 
backend. On your homepage you write that this helps to envolve 
ExifTool that fast. Now, with 5.00 ready, can you imagine to port 
this to a c/c++-lib?

PH: When I decided to add the writing features to ExifTool last 
December, I considered rewriting the project in C++ since the 
work required to add the writing abilities would be many times 
the effort of writing the original utility.  But even if I 
ignored the cost of rewriting the existing code, it would have 
been twice the work to do this project in C++, so I decided to 
use Perl.
****
> We cannot using Exifttol in digiKam. We using C++...

Too bad that there are no scripting hooks so tasks like metatag 
handling can be temporary handled by 1st class scripts as long as 
the C/C++ libs are still so limited.

I would also start writing a wrapper C++-class for exiftool in any 
way you like as I do not see a performance problem. In digiKam 
current metatag handling only works on one single photo. So with 
a little bit smart code handling fast pic-to-pic clicks in album 
view every script ist fast enough for reading and writing a 
single file. Slower handling is better than no handling. ;-)

Bye

  Thorsten




More information about the Digikam-devel mailing list