Notes on Jhead

Compiling:
    Under Windows, with Microsoft Visual C on your path, type:
    cl -Ox jhead.c exif.c myglob.c

    Under Linux, type:
    cc -lm -O3 -o jhead jhead.c exif.c 

Liscence:

    Jhead is public domain software - that is, you can do whatever you want
    with it, and include it software that is liscensed under the GNU or the 
    BSD liscence, or whatever other liscence you chose, including proprietary
    closed source liscenses.

    If you do integrate the code into some software of yours, I'd appreciate
    knowing about it though. You can reach me at mwandel@rim.net

Matthias Wandel




Change notes:
1.1 --> 1.2
* Now recognizes more Exif tags (Contributions by Volker C Schoen)
* One hour off on -ft option fixed (uninitialized DST structure element)
* More flexible date-renaming option using strftime function
* -n and -nf option no longer overwrite pre-existing target names under Unix

1.2 --> 1.3  (August 8 2001)
Added -te option for trasplanting exif headers between Jpeg images
Added -st option for saving the integral Exif thumbnails to a spearate file
Added -dc option to delete all comments
Bugfixes:
* Follow the TIFF directory links in the Exif correctly, not just the Exif link.
  This necessary for extracting the thumbnail from the exif header.  Thansk to
  Michael D Hughes (mdh@logcabin.woods.bridge.com) for explaining his subtle 
  nuance of Exif file headers.
* No longer crop comments at 200 characters.

1.3 --> 1.4  (Oct 9 2001)
* Fixed saving of thumbnails for big-endian format cameras
* Wen renaming files to date based scheme, avoid changing names of files with 
  correct name already.
* Added '-de' option to remove exif header
* Added '-ts' option to set exif timestamp absolutely

1.4 --> 1.5  (Oct 25 2001)
* Minor typos fixed
* Added "-ce" option to edit comments
* Fixed bug in "-ts" option that caused the time set to be incorrect




Detailed change log:

Jun 3 2001:
Added -dc option for deleting all comments

Jun 5 2001:
No longer clip comment length at 200 characters on display

Jul 16 2001
Follow TIFF link correctly
Save thumbnail option added
    (Thanks Michal D Hughes for his help mdh@logcabin.woods.bridge.com)

Aug 8 & 9
Transfer exif header option added.
Moved relative path & discard all but jpeg stuff in separate functions
Changed ISO heuristic to deal with ISo < 80 better
    (Thanks Harry TsaiHarryTsai@alum.mit.edu)

Agust 12
Testing under Linux, minor fixups.

-------Released version 1.3-------

August 26
Fixed problem where thumbnails in big endian files were not saved right.
    (thanks Joe Steele [joe@madewell.com])

Sept 1
Added command line option to remove exif section entirely.
Added time / time-zone adjust option.

Sept 9
Avoid renaming file with right name again with -n option
Change name of SetFileTime variable to not conflict with windows.

October 9
Added option to set exif timestamp to absolute time
Added option to save thumbnail to stdout (unix only)
    (thanks Nathan Schmidt [mailto:nathan@cs.stanford.edu])
Fixed bug in parsing truncated exif headers 
    (thanks Joachim.Geyer@djh-freeweb.de)
Got rid of strnprintf (not avilable on FreeBSD 4.4)
  
-------Released version 1.4-------

Oct 10:
More improved handling of truncated exif headers - as may be produced by -dt option
in older versions of this program.

Oct 18:
Fixed bug in -ts option where '-' causes scanf to treat parms as negative.
    (thanks Pete Ashdon [mailto:pashdown@xmission.com])

Oct 25:
Added -ce option


To do:
-better -dt handling (don't just truncate the thumbnail off)