On Jan 28, 2013, at 2:31 PM, Miles Bader wrote:

> Second, a question: Is there a way I can tell OpenImageIO "whatever
> the output format is, use the 'normal' data-type for that format."?

Good question.  I think the honest answer is that we don't seem to have 
implemented a consistent policy about what happens when a file is opened and 
the ImageSpec requests a data type that is not supported by the file format.  
Usually, it just picks a good fit among the supported data type. But not all 
behave that way -- at least TIFF (I just checked) could outright reject certain 
unsupported data types. And there isn't a way to say "give me the default."

So I propose the following rule, which if people approve I can implement in no 
time:

1. ImageOutput::open will never fail because of a request for an unsupported 
data type; if not supported, it will choose a supported data type that will 
lose as little range or precision as possible compared to the original request. 
The app, of course, is free to examine output->spec().format, compare it to the 
original request, and take action if it couldn't get the data format it 
originally requested.

2. If ImageOuput::open() is called with a spec whose format = 
TypeDesc::UNKNOWN, the ImageOutput will select a "default" supported data type, 
which is informally defined as "the most common configuration of that file type 
in the real world, and/or the data type likely to have the widest range of 
readers that are able to handle it."

Sound good?

        -- lg

--
Larry Gritz
[email protected]


_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to