If you would permit me one clarification of your explanation, Photo Info actually has two different modes of operation when tagging NEF files, depending on the presence or absence of an installed codec.
If the Nikon codec is installed we defer to the codec for metadata read/write, with the results as described (and as you state, this is a validly-formed NEF file). However, if the Nikon codec is not installed, Photo Info has internal code that follows the same strategy as Photo Mechanic, appending the IPTC information to the end of the file. (We did significant interoperability testing with your product, in fact.) So in the immediate future while the codec issues are being worked out, customers can use Photo Info and PM together without installing the NEF codec, should they choose to do so.
Hi Gary,
It is clear that Nikon's codec is responsible for the file being rewritten in such a way that it breaks third party RAW converters. Plus, I suspected that it was Nikon's codec since it was XMP data that was embedded not IPTC, and the FAQ says that XMP metadata isn't supported without a RAW Windows codec installed. Is that correct?
I haven't (yet) examined a Photo Info modified RAW file other than the NEF file modified via the Nikon codec, so I cannot say how "intrusive" MPI really is on its own. But from what I read in the FAQ it sounds like MPI will move things like the maker note if room needs to be made:
The "Maker Note" tag is not deleted, but it may be relocated in the image stream.Perhaps this is only for JPEGs? Its not clear.
I guess the question is can one "undo" the MPI tagging of a TIFF-based RAW file (e.g. NEF)? The answer appears to be "no" for the Nikon codec, but what about the built-in MPI codec for TIFF-based RAW files? If metadata tagging cannot be undone or reverted, then MPI isn't using the same strategy as Photo Mechanic. And are "regular" TIFF files treated differently than TIFF-based RAW files (sounds like it from the FAQ):
If a compressed TIFF file must be reorganized to add metadata, the TIFF codec does not always preserve the original compression settings, causing the file size to increase.That sounds pretty intrusive to me.
Do you know if there will be some type of utility created to "repair" files captioned by Nikon's codec (by "repair" I don't mean the file is bad, only that it could be rewritten again to be compatible with third-party RAW converters).
While the current issue with the NEF codec is unfortunate, it is not untypical of the "teething pains" that any new approach can have, and we expect it will be short term... The good news is that Nikon (and other camera manufacturers) in supporting Windows codecs is making it possible for Winodws applications to work with RAW images without requiring updates for each new camera model.
I agree that this is a better approach than Mac OS X (especially when Apple has had so many problems parsing modified RAW files). When a new camera ships with an updated codec (that hopefully supports all older models and behaves no worse than a previous codec), Windows applications using the Windows Imaging Component (WIC) will automatically gain access to the new files. This should solve the RAW rendering problem, but the history of camera manufacturers embedding metadata has not been very promising (e.g metadata bugs still exist today in the latest version of Capture NX). One scary thought would be that Exif decides to embed IPTC and XMP within the Exif block (this would truly be messy because it would practically require that the Exif block be recreated when editing metadata).
Although I agree it is convenient to have all metadata embedded, it seems that WIC should be made to handle XMP sidecar files. Plus, there are currently problems with Adobe's products when embedded XMP is present in a RAW file. For example, Bridge only updates the XMP sidecar file and not any embedded XMP (even though the embedded XMP takes read precendence over the sidecar), causing problems with preferences "sticking" in Bridge. It is for this reason that some prefer to only use XMP sidecar files.
One other question, does MPI support UTF-8 encoded IPTC?
--dennis