Tuesday, March 16, 2010

ExifTool download statistics

I just checked the web server to see how many people are downloading exiftool. I am now getting more than 1000 downloads per day from the main server. This doesn't include all of the downloads from the various CPAN mirrors and other download sources (which all together could easily be another 1000 per day).

At this rate I could retire with a $40,000 per year salary if I just charged $0.05 per download.

But ExifTool is free.

Monday, March 1, 2010

Stupid Samsung SRW

Samsung has invented another TIFF-based RAW format called SRW (used by the NX10).

The idiot Samsung engineers haven't included any sort of file identifier to allow this type of file to be distinguised from a TIFF image. This means that software must rely on the file extension to be able to read or write this file properly. This really pisses me off. Will they never learn?!

Also, they have included no identifier in their maker notes, which again is not a good idea.

The best one can do to identify these images is to look for a SubIFD1 Compression value of 32770, but this can only be found after processing IFD0 and the SubIFD's.

It would be much better if the file included a signature after the TIFF header such the Canon CR2, or a different TIFF magic number like Olympus ORF.

[Edit - discovered more idiocy]

Another BLACK MARK against the Samsung engineers:

The SRW format stores the ThumbnailImage inside a SubIFD of IFD1 instead of directly in IFD1 as per the EXIF specification.

Why are they so stupid?

Monday, February 22, 2010

Production Leica S2

Well, support for the insane Leica S2 maker notes was finally added in the version of ExifTool that was released a few days ago. Adding this support was as painful as I had anticipated. As it turns out, images from the production model have all the same problems of the pre-production samples. The question about the funny 0x800 offset is explained by the fact that a different offset base is used for one maker note entry (coupled with lots of unnecessary padding to keep the value at a constant offset). Anyone who understands the TIFF IFD structure will realize how stupid this is -- one may draw their own conclusions about the level of understanding by Leica engineers.

Thursday, November 19, 2009

Leica S2 Fiasco

Yet again the JPEG 64kB segment-size limitations make life difficult for me.

Presumably to avoid this limitation, the new Leica S2 writes the complete maker notes (860kB of them) outside the EXIF segment, and instead writes them after the JPEG EOI. Needless to say, this complicates things for me yet again.

But there are other problems in the S2 maker notes that make me pray my samples are from a pre-production camera and that the format will be fixed in the production model. Many maker note values, including one offset, have a constant value of 0x0800. This can't be right. I will wait until I get some production samples before adding support for this camera.

Thursday, November 5, 2009

Software designed to make you feel stupid

Adobe LightRoom

The first time I tried to use Adobe LightRoom to edit metadata was frustrating to say the least. First I had to figure out how to import the image (why? the image was right there on my desktop!!), then I had to find the metadata panel (which is quite a challenge since it had scrolled down and out of view in one of the panes to the right). I didn't find this panel at first, so the "Metadata" menu entry drew my attention. Sounds good. That's what I want, right? However, this menu seems to deal only with a group of metadata presets, which complicated things since I just wanted to change a single picture. Oh well. Forge ahead. Editing the metadata presets seemed like the right thing to do. When I was done editing LR forced me to save the presets with a new name, which I didn't want to do, but I didn't have any choice, so I did it anyway. Then, the next obvious step was "Save Metadata to File", which didn't work. Darn. Presumably it didn't work because I needed to somehow select the presets that I had just saved, but how? I could see no entry in the menus to set the current metadata presets. At this point I seem to remember taking a time out and coming back to the problem another day. Eventually I was able to somehow change the presets and write my changes to the file, but right now for the life of me I can't figure out how I did this (I have LR open now and I'm trying to reproduce what I did). Oh wait. There it is. Right-click on the image and select the presets from the "Metadata Presets" menu item (the good ol' hidden menu to the rescue). No, wait. That didn't work. Try a splat-S for good luck. Hooray! Success! Finally.

Capture One

Yesterday I downloaded a copy of Capture One and tried to edit some metadata in an EIP (Capture One Enhanced Image Package RAW image). From my experience with LR, I guessed I would first have to figure out how to import the image. So I did this, which was confusing enough, but then for the life of me I couldn't see how to select the image once I had imported it. You would think it would be displayed somewhere in the library of images, but no. I couldn't find it. Finally after some searching on the hard disk I found it nested deep below a "Capture One" directory in my "Pictures" folder. OK, cool. Select the image in the browser pane from that location on the disk. At least the metadata pane is not hidden, so I click on an IPTC entry and try to change it. Nothing. Can't enter any text. Darn. Time to RTFM. The FM says that I must 1) import the image. Good. Done. Let's proceed. Then 2) click on the IPTC entry. Good. Done. What next? 3) Type in new value. Darn. Bummer. Tried that. The keyboard focus never changed. The nice picture in the FM shows a highlighted text entry field. Can't make that happen. Clicking a thousand times still doesn't bring it up. Try going back and re-importing different images to different locations. Now I have copies of images scattered across my hard disk and I still can't change any metadata. After about an hour of searching through the menus, clicking all the various tiny icons in the interface, and RTFM-ing, I finally give up. It just isn't worth it. I have to watch my blood pressure.

Sweet Irony

...and people complain about the ExifTool command line interface.

Friday, October 23, 2009

Date/Time tags

A scenario: On 2009/10/23 I edited an image that I had originally scanned from a photograph on 2009/09/12. The date stamped on the back of the photograph was 2009/05/16 (the date the film was processed). The picture was taken in a museum on 2009/05/01 during my trip to Washington DC. The subject of the picture is a 2005 painting by Tom Freeman which depicts the bombing of Pearl Harbor on 1941/12/07.

The question: For this image, what should be the values of each of
these tags? (The MWG tag descriptions are in brackets.)
  1. ModifyDate - ("modification date of the digital image file")
  2. CreateDate - ("creation date of the digital representation")
  3. DateTimeOriginal - ("creation date of the intellectual content being shown")
The answer?:
  1. DateTimeOriginal - I think it is fairly clear that this should be 2009/10/23, the date that the image was last modified.
  2. CreateDate - If we take the MWG description literally this should be 2009/09/12 (the date that the image was scanned), however this date is perhaps not as meaningful as some of the other possibilities.
  3. DateTimeOriginal - This one is up for grabs. Any of 2009/05/01, 2005 or 1941/12/07 could be possible.
DateTimeOriginal is the most difficult. What is meant by "intellectual content being shown"? For any other general picture I took during my trip, this would be easy, and it would be 2009/05/01, the date of my trip. However, the subject of the picture is a painting which was created in 2005. But the content of the picture is the 1941/12/07 raid on Pearl Harbor.

I suppose the proper value for DateTimeOriginal depends on the context in which the image is used. If I want to associate the image with other pictures from my trip, then 2009/05/01 is the most appropriate date to use. However, if I am using it to document an essay on American history, then 1941/12/07 is more significant, or if used in a biography of Tom Freeman, 2005 is the appropriate date.

Confusing.

Tuesday, June 23, 2009

Déjà vu

CIPA has recently released a "Multi-Picture Format" (MPF) standard for storing large images in JPEG files. Again, there is a big problem with this standard: It uses offsets that are relative to the start of the MPF header (in the new MPF APP2 segment) to reference images after the JPEG EOI. These offsets will quickly be broken if any data after the MPF segment changes length. This problem could have been avoided if offsets had been specified relative to the end of file, but it is too late for this now that the specification is public.

The only workable alternative I can see is to enforce the rule that the MPF APP2 segment must come after all other APP segments. (It would have been smart if this was specified in the CIPA standard, but sadly this isn't the case.) If this is done, then metadata in the remaining APP segments (EXIF, IPTC, XMP, etc) can safely be edited without breaking the MPF offsets. I suggest that all metadata editors employ this strategy, regardless of the segment order specified in the standard (which says that the MPF APP2 segment must come immediately after the EXIF APP1 segment).