ExIf 35 – Re-evaluating an Abandoned Project

I started the ExIf 35 project (http://exif35.pcfire.net) in 2010 when I returned to shooting film. Perhaps I’m metadata obsessed, or just crazy, but I decided I wanted good ExIf data on my scans of film photos. In the six years since I started the project I allowed myself to reach a point where I felt that ExIf 35 was “complete”, it did what it needed to do, usually pretty well. I made no major changes to the software since 2012 (see: http://exif35.pcfire.net/viewnotes.php) and I drifted somewhat away from film photography as a hobby and art again. This spring I purchased a Nikon F6 camera and dove right back in just as deep as I had been before with film photography – the only difference is that the F6 does a bit of its own metadata recording, which makes having a metadata/ExIf workflow even more important. Since the Nikon F6 was released in 2004 many of its accessories (MV-1) are no longer made and its intended software no longer functions in the modern era, so I had to seek out other alternatives and build new things into ExIf 35 to accommodate my needs.  When I speak of “my needs”, I refer of course to the fact that I record information beyond basic ExIf data. I like to record things like photographic filters in use and details about how the film was developed (see: http://exif35.pcfire.net/docs.php?doc=xmpSpec for a complete list of my special fields).

Yesterday in a fit of boredom between semesters I began looking at some of my data in Exif as it was stored in Flickr. I realized that there was no degree symbol in my develop temperatures (20 C vs. 20° C), so I started tinkering with the data writing process, only to find out that putting that character in one location in the file (Exif:ImageDescription) caused Flickr to corrupt the field when it is displayed. In an effort to correct the problem I began looking at the field in other applications (ACDSee, PhotoMe, etc). I discovered two things 1) There is nothing wrong with the bloody thing and 2) There are a few new ExIf fields that I had not seen before. This led me to the ExIf documentation (http://www.cipa.jp/std/documents/e/DC-008-Translation-2016-E.pdf).

Many of the fields that were added in 2012 to version 2.3 and in 2016 to version 2.31 are fields related to sensitivity speed and sensitivity type.   Most notably, ISO is no longer the only way to measure sensitivity. While I doubt I will use anything else, this represents a bit of an evolution in the way that metadata capture on imaging devices is represented. The addition of fields such as PhotographicSensitivity, RecommendedExposureIndex and a new ISOSpeed field expand options for the level of detail that is recorded for film sensitivity, although the creators of ExIf intended such fields for describing electronic sensors and their gain ranges – funny how those parallels between digital and film are maintained after all this time. When I first read about those fields my first thought was a very quirky film called Ilford Delta 3200. This film is marketed (recommended, even encouraged in DX) to be ISO 3200.  The actual film speed is ISO 1000. The film is regularly shot anywhere from ISO 800 to ISO 6400 (some claim it can push to 12,800). Once I figure out what each of these fields does in practice (through reading them in a variety of applications) and maybe through reading ISO specification 12232 I will be better prepared to use these fields to accomplish my goals. Some of the new fields relate to details of the camera and lens configuration used – these I am already implementing as they are clearly defined.

I feel that I need to re-evaluate ExIf 35 because there are a lot of gaps in what it logs to files, what is collected from users and perhaps some difficulties with the way that it writes data in general. I have been away from the project for too long and have only added fields on occasion. The overall functionality of the application needs to be checked for compliance with modern standards as I implemented my ExIf writing in an experimental way, guessing at how things worked and then leaving things in place once they worked, which is perhaps not the best way to approach something as intricate as metadata. There are also fields that I have not tested in detail how they work, which may also introduce problems that cause some applications to not read the file accurately. The addition of new fields such as time zone offset present cases where the UI and the data storage (preferences and defaults) functions need to change to match the expectations of the standards. Adding the new ISO fields I mentioned before will require a change to the handling of recording ISO data, such as I will need new fields in the form to collect the data and will need to establish logic to ensure that all of the data is recorded accurately and consistently even with those fields are not filled out (very often I shoot and develop my standard film, HP5+, at its DX speed, so assuming the other values is fine).

The project, and its documentation, are long overdue to be refreshed. There are many areas I have patched in new fields or extended functionality without reworking the workflow or the ExIf encoding process.