Hi Larry, OIIO supports output to multipart EXR images, and they have to be written out like this:
open(multipart file with n parts) write_tiles(...) open(...AppendSubimage) write_tiles(...) open(...AppendSubimage) write_tiles(...) close() So you write out the first subimage, then the next, etc... The motivation for this email is that with this setup, when you are rendering, you need to keep all the tiles in memory before they can be written out. OpenEXR itself lets you write out tiles for any part in any order. So, when using the EXR API directly, a renderer could write out tiles as soon as they are done, and the physical layout of the multipart image would end up looking like this: [chunk offset index] [part 0, data for tile (0,0)] [part 1, data for tile (0,0)] [part 2, data for tile (0,0)] ... [part 0, data for tile (0,1)] [part 1, data for tile (0,1)] [part 2, data for tile (0,1)] ... It looks like supporting this means extending OIIO's API, so that you can set the part you want to write to, without having to close/open a "subimage". Another way to look at this conceptually, is to consider an EXR part as a channel grouping rather than a tiff style subimage. Have you considered extending OIIO's API in this direction? Best, r
_______________________________________________ Oiio-dev mailing list [email protected] http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
