2008.10.31 17:49 "Re: [Tiff] Data ordering for planar config separate", by Bob Friesenhahn
next sample. I'm trying to determine if images that contain multiple strips for each sample can be read by interleaving the reads from each sample within a loop for each row of the image or whether that violates the random access prohibition for compressed data. I'd be reading sequentially within each
Scanlines and strips are padded to byte boundary alignment. Compression is at the scanline/strip/tile level so that they are all independent. This means you can retrieve in any order you like. Depending on how the data is stored on disk, some retrieval patterns will be faster than others due to potential disk seeks.
The tiffdump of my 32 bit per sample image below indicates that the
strips are being written RRR, GGG, BBB
This is likely an artifact of the order that GraphicsMagick is outputting the strips. Since GraphicsMagick is not planar internally, I have it outputting RRR, GGG, BBB strips. However, I could have done a pass through GM's image representation for each color plane and then libtiff likely stores all the red, green, and blue strips together. This would be slower from GM's standpoint (multiple passes through all the pixels) but faster from the standpoint of an application which natively uses planes, or wants to only retrieve one plane.
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/