2004.05.18 15:05 "[Tiff] Further doubt on bits per sample", by Mayank

2004.05.18 13:53 "Re: [Tiff] Further doubt on bits per sample", by Bob Friesenhahn

1. How does the bits per sample cases of 1,4 or 5 are handled by the libtiff library? Does the readstrip/readtile functions return the data, such that, the pixel values are always packed in byte boundaries?

Nope. For strips, pixel values are packed without any padding.

i.e. for bits per sample case of 4, are two pixel values clubbed into one byte or one byte always contains one pixel value only?

Yes, both will be in one byte. For bits per sample of three (a very odd number), two pixels will be entirely represented in a byte, along with two bits of the next pixel sample.

My comments apply to strips. I am unsure about tiles.

See GraphicsMagick (http://www.graphicsmagick.org/) for some free source code which makes unpacking/packing samples of any size (up to 32 bits) from a byte stream a trivial operation. There is some similar code in libogg, but the Ogg version seems to be much more complex/lengthy.


Bob Friesenhahn