BigTIFF Design¶
This design details a 64-bit (larger than 4GB) TIFF format specification. The design is based on a proposal by Steve Carlsen of Adobe, with input from various other parties.
Briefly¶
Version = 43
8-byte offset to first IFD
Value/Offset fields are 8 bytes
8-byte offset to the next IFD
add
TIFFType
ofLONG8
, an 8 byte (unsigned) intStripOffsets
andTileOffsets
andByteCounts
can be LONG8
More Detail¶
The Version ID, in header bytes 2-3, formerly decimal 42, now changes to 43
Header bytes 4-5 contain the decimal number 8.
If there is some other number here, a reader should give up.
This is to provide a nice way to move to 16-byte pointers some day.
Header bytes 6-7 are reserved and must be zero.
If they're not, a reader should give up.
Header bytes 8-15 contain the 8-byte offset to the first IFD.
Value/Offset fields are 8 bytes long, and take up bytes 8-15 in an IFD entry.
If the value is ≤ 8 bytes, it must be stored in the field.
All values must begin at an 8-byte-aligned address.
8-byte offset to the Next_IFD, at the end of an IFD.
To keep IFD entries 8-byte-aligned, we begin with an 8-byte (instead of 2-byte) count of the number of directory entries.
Add
TIFFTypes
ofLONG8
(= 16), an 8 byte (unsigned) int, andSLONG8
(= 17).Add
TIFFType
IFD8
(=18) an 8byte IFD offset.StripOffsets
andTileOffsets
andByteCounts
may beLONG8
or the traditionally allowedLONG
orSHORT
.The proposed extension is
.tf8
, and call it "8-Byte TIFF".Otherwise, it's just like "original TIFF." ("TIFF Classic?")
Open Issues¶
What to call the new format
ChrisCox -- I don't think end users will understand what "8-byte TIFF" means
AndreyKiselev - 23 Sep 2004 -- What about TIFF64? "64" is a widely used buzzword and should be directly associated with the 64-bit offsets and 64-bit architectures.
What 3 character file extension to use (gotta be DOS compatible)
What 4 character file type to use (for Macintosh)
What MIME type to use
Samples¶
Example files from Joris Van Damme.
Changes¶
TIFFType
13 isttIFD
, 14 is assigned tottUnicode
, and 15 is assigned tottComplex
. So, I changed the types forttLong8
andttSLong8
to 16 and 17, respectively.AndreyKiselev - 23 Sep 2004 -- Where are these fields defined? Is there any new Technical Note or something? And what is encoding behind the word "Unicode"?
ChrisCox - 27 Sep 2004 -- They are in the Adobe TIFF definitions. I am still working on releasing updated TIFF documentation.
Added list of open issues.
settle on version 43
cleanup
TIFFType
18 (8 byte IFD) added.Clarified that fields which may be
LONG8
can also be one of the old supported types.