2006.04.04 16:50 "[Tiff] BigTIFF Suggestion", by Larry Michaels

2006.04.04 22:14 "Re: [Tiff] BigTIFF Suggestion", by Larry Michaels

Our application acquires images from digital cameras and allows images to be stored in sequences which are currently TIFF files. It therefore commonly needs to append new images to existing TIFFs. Our users may need to save hundreds or even thousands of images in a single TIFF file. I have implemented a few tricks with the LibTIFF code to avoid having to walk through the entire directory list each time, but it would be great if the new BigTIFF specification could support this capability officially.

I thought that simply adding another eight bytes to the BigTIFF header for an last IFD offset value would provide the needed information with minimum disruption to the specification. The value could be optional; If a BigTIFF writer did not want to write the offset value, it could simply write zero to the field.

I realize that this suggestion would have been more appropriate two years ago, but I have only just recently been asked to enhance our application's efficient writing of huge image sequence files, and have therefore started investigating BigTIFF as an option.

Larry Michaels

How often do applications append something to a TIFF file instead of writing the whole file at once?

I don't think this is a common enough occurrence to change the file format.

On 4/4/06 9:50 AM, "Larry Michaels" <lmichaels@diaginc.com> wrote:

I would like to propose the addition of a field to the BigTIFF specification, perhaps in the header, to specify the offset to the last IFD. This would make the task of appending new images to the end of the BigTIFF file much more efficient than it currently is. Currently, appending an image requires seeking to each IFD, starting with the first, reading the tag count value, and then seeking to the next IFD offset value until the last IFD is found. This can be quite time-consuming when appending images to files which already contain a large number of images. Being able to seek directly to the last IFD would radically improve performance in such situations.