2004.09.16 19:12 "[Tiff] BigTIFF Tag Value Count issue", by Joris Van Damme

2004.09.17 11:43 "Re: [Tiff] BigTIFF Tag Value Count issue", by Joris Van Damme

Option 0: stick with 4 byte tag count members (alignment, tag data <= 4 gig, Frank's choice)
Option 1: make it an 8 byte tag count (no alignment, tag data > 4 gig allowed)
Option 2, courtesy of Bob: make it 8 byte tag count, add 4 padding bytes (alignment, tag data > 4 gig allowed)

There is another option to get 8 byte alignment, so instead of 4 padding bytes they are used for extending the first 2 fields => aligning every field to 32 bit. This might be easier to handle by processors [less complex masking]

Offset - Datatype - Value
--------------------------
0 - ULONG - Tag identifying code
4 - ULONG - Datatype of tag data
8 - Unsigned Long - Number of values
8 - 4 bytes - Tag data or offset

Rob,

Very valid fourth option, I think. It was a good idea to instert the strucure's sortoff table view again (except, of course, that I mentioned this structure for classic TIFF, in BigTIFF the last member is 8 bytes long). So allow me to do the same for all options sofar

** Option 0: stick with 4 byte tag count members **
(Alignment, tag data <=4 gig, Frank's choice)

0 - U16 - Tag identifying code
2 - U16 - Datatype of tag data
4 - U32 - Number of values
8 - U64 - Tag data or offset
16

** Option 1: make it an 8 byte tag count **
(No alignment, tag data > 4 gig allowed, no votes sofar)

0 - U16 - Tag identifying code
2 - U16 - Datatype of tag data
4 - U64 - Number of values
12 - U64 - Tag data or offset
20

** Option 2: make it 8 byte tag count, add 4 padding bytes **
(Alignment, tag data > 4 gig allowed, Bob's choice)

0 - U16 - Tag identifying code
2 - U16 - Datatype of tag data
4 - 4 bytes padding - Unused
8 - U64 - Number of values
16 - U64 - Tag data or offset
24

** Option 3: make it 8 byte tag count, extend previous 2 members to 4 bytes **
(Alignment, tag data > 4 gig allowed)

0 - U32 - Tag identifying code
4 - U32 - Datatype of tag data
8 - U64 - Number of values
16 - U64 - Tag data or offset
24

Rob, am I to understand you like option 3 best, or were you merely signalling the possibility?

Joris Van Damme
info@awaresystems.be
http://www.awaresystems.be
Download your free TIFF tag viewer for windows here:
http://www.awaresystems.be/imaging/tiff/astifftagviewer.html