From: George E. Sotak I have created a PDF version of the tutorial. It is available under the "pmt-tutorial" download package at https://sourceforge.net/project/showfiles.php?group_id=15073. I have zipped the file, but it is still rather large (~6.5 Mb). - George 621274N@knotes.kodak.com on 08/13/2001 10:29:50 AM To: Martin Blais cc: bousch@topo.math.u-psud.fr, rft@cg.tuwien.ac.at, jim.thompson@pobox.com, cstromberger@users.sourceforge.net, curtisg@users.sourceforge.net, gesj@users.sourceforge.net, lin@users.sourceforge.net, rupe@users.sourceforge.net, randeg@alum.rpi.edu, matt@rim.net, daniel@cheeseplant.org, dybdahl@users.sourceforge.net, rifleman69@users.sourceforge.net, ryuuji@takenet.or.jp, gphoto-devel@gphoto.org (bcc: George E. Sotak/621274/EKC) Subject: Re: exif project From: George E. Sotak Martin, Sorry for the late reply, I have been on vacation and today is my first day back. I would like to point you to a more generic solution that I and a few others have been working on in terms of accessing picture metadata -- the Picture Metadata Toolkit at sourceforge.net/projects/picturemetadata. The home page, picturemetadata.sf.net, contains an overview of the the design concepts. I have also attached a PowerPoint tutorial. Basically, it provides a level of abstraction or a "common look and feel" to picture metadata, insulating the application from the variabilities of the format of the various carriers (e.g., Exif, Tiff, XML, etc.). The design is object oriented and is currently implemented in C++ and we are beginning work on a Java implementation. - George (See attached file: metadata-tutorial-DevCon2001-finalfordist.zip) Martin Blais on 08/05/2001 06:04:33 PM To: bousch@topo.math.u-psud.fr, rft@cg.tuwien.ac.at, jim.thompson@pobox.com, cstromberger@users.sourceforge.net, curtisg@users.sourceforge.net, gesj@users.sourceforge.net, lin@users.sourceforge.net, rupe@users.sourceforge.net, randeg@alum.rpi.edu, matt@rim.net, daniel@cheeseplant.org, dybdahl@users.sourceforge.net, rifleman69@users.sourceforge.net, ryuuji@takenet.or.jp, gphoto-devel@gphoto.org cc: (bcc: George E. Sotak/621274/EKC) Subject: exif project Hello gang. I am writing to you because I have found your contribution in one of the projects below related to EXIF tags parsing. The current situation is that this would be a very useful resource, for which many people have independently provided separate, incomplete or partial solutions. It is thus quite a mess to try to find the more complete, best tool for this (none of them does everything). I would like to ask you if you would be interested in participating in a common project to provide a library to parse EXIF tags from images with the features below. I would like to join efforts with others to provide a SINGLE, DEFINITIVE RESOURCE for this task (both a Python module AND a C library, as two separate packages within a common project, hosted on SourceForge). In particular, the project would aim at the following goals: (1) parsing the EXIF headers (library) in JPEG files; (2) parsing the EXIF headers in TIFF/EP files (tag 0x8769) and others; (3) extract thumbnails that are precomputed in the files; (4) provide simple cmdline interface to generate data in human-readable format (a GUI could be built upon the library but should be separate project, but ultimately, the product of this project would be a library, so you could provide any desired output by using its features); (5) support for camera-specific MakerNote tags (e.g. Nikon, Canon, etc.); Moreover, --- it should be free software, under some open source license (I'd like to suggest GNU GPL), and should work under both windows and unix, and have some simple cmdline utility to use it. --- generating HTML pages should NOT be an integral part of this tool, but it should be easy to integrate with one of the many packages that aim to this goal. Eventually, it would be nice to be able to parse the following file formats: EXIF, TIFF/EP, TIFF/FX, as well as MakerNotes from: Olympus, Epson, Sanyo, Ricoh, Nikon CP and D1, Casio, Canon, Toshiba, Fuji, Kodak, Sony. I think the C library and the Python library could simply be separate development efforts, for which the project would provide a common umbrella. IMHO a Python library is very portable and is very easy to code and modify. A C library provides better integration possibilities in already existing software. They are both essential IMO. I'd like to get your input on this matter, and whether you're interested in CONTRIBUTING or INTEGRATING YOUR OWN EFFORTS into this prospective project. Given enough interested parties, I'd open a project and web page and we could start working on a plan of attack and some common code. Be aware though, that developing with many others will not be as easy as diddling your own code alone (and we'd use the CVS server from SF), but that ultimately we would all benefit from a resource that will be broader and tested by many more people (more stable). In particular, C developers would have to negotiate an interface that would suit all. All opinions welcome. Thanks, -- M., author of xxdiff and curator (on SF). See below for the list of currently existing projects and which of the above points they address (none addresses all of the above points, although some come pretty close). ------------------------------ http://topo.math.u-psud.fr/~bousch/exifdump.py bousch@topo.math.u-psud.fr (1,4) - Python script that outputs all the EXIF tags Notes: this script was the starting point for many other projects. ------------------------------ http://ray.cg.tuwien.ac.at/rft/Photography/TipsAndTricks/Exif/ rft@cg.tuwien.ac.at (1,4,5) - display the EXIF information of one or more JPEGs (format can be specified via a template) - generate a html-files containing EXIF information for one or more JPEGs, again specified via a template - rename one or more JPEGs so that the filename is based on the date and time the picture was taken ------------------------------ http://exif-tools.sourceforge.net/ jim.thompson@pobox.com (1,4) - Dump the tags in an EXIF file. - Lists the comments in JPEG files. - Can also extract the WAV sound files out of JPEG files. ------------------------------ http://pyexif.sourceforge.net/ cstromberger@users.sourceforge.net (?) - Python scripts to extract exif - output in a human-readable format Notes: project does not seem to have released any files, no home page ------------------------------ http://libexif.sourceforge.net/ curtisg@users.sourceforge.net (1,4) - C library to parse EXIF tags Notes: available from CVS only, has AOLserver module thingy. ------------------------------ http://openexif.sourceforge.net/ gesj@users.sourceforge.net lin@users.sourceforge.net rupe@users.sourceforge.net (?) - an object-oriented interface to Exif formated image file Notes: project does not seem to have released any files, no home page. ------------------------------ http://pmt.sourceforge.net/exif randeg@alum.rpi.edu (?) - an open source project to develop tools for preserving Exif information from digital cameras in PNG, MNG, and JNG files. Notes: can't find any code, just a plan of attack. ------------------------------ http://www.sentex.net/~mwandel/jhead/ matt@rim.net (1,4) - cmdline utility for extracing EXIF tags ------------------------------ http://www.cheeseplant.org/~daniel/pages/metacam.html daniel@cheeseplant.org (1,2,4,5) - extract EXIF tags and dump - written in C++ - all that's missing is thumbnails and configurable output ------------------------------ http://cat-photo.sourceforge.net/ dybdahl@users.sourceforge.net - HTML index generator, which can extract EXIF from JPEG ------------------------------ http://photoshelf.sourceforge.net/ rifleman69@users.sourceforge.net - HTML index generator, which can extract EXIF from JPEG ------------------------------ http://www.takenet.or.jp/~ryuuji/minisoft/exifread/english/ ryuuji@takenet.or.jp (1,2,5) - Windows GUI program that can read a great variety of formats and MakerNotes Notes: no source code is provided, no cmdline utility. ------------------------------ http://gphoto.org gphoto-devel@gphoto.org - interface to cameras, which contain some EXIF parsing C code (can't test it yet, my CP995 is not supported, I use usb-storage driver) ------------------------------ Document references about EXIF format: http://it.jeita.or.jp/jhistory/document/standard/exif_eng/Exife.pdf http://www.butaman.ne.jp/~tsuruzoh/Computer/Digicams/exif-e.html [TIFF-EP] ISO/DIS 12234-2, "Photography---Electronic still picture imaging--- Removable memory---Part 2: Image data format---TIFF-EP", November 24, 1998, available at http://www.pima.net/standards/iso/standards/documents/N4378.pdf http://exif.org