OpenImageIO/oiio — pull request #450 by lgritz (2012-11-02 21:13:04+00:00)
Title: Deal with texture inputs with unassociated alpha without conversion

Deal with texture inputs with unassociated alpha without conversion including
texture inputs are associated but incorrectly are tagged as unassociated alpha.

This comes in two parts:
1. A new ImageCache attribute "unassociatedalpha", which when set to 1 will
cause image files to be opened with the special configuration option
"oiio:UnassociatedAlpha", which is recognized by the image reader as
an instruction to leave unassociated alpha as it is, rather than converting
to associated alpha upon input.
2. A maketx option --keepunassoc, which when used will set this option for
the ImageCache.

The net result is that 'maketx --keepunassoc' will not scale the color
channels by alpha, even if the file appears to have unassociated alpha.

The main reason this is coming up is that Mari appears to have a bug wherein
its TIFF output is tagged as having unassociated alpha, even though it does not.
Therefore maketx was inappropriately and automatically scaling the color
channels when this was not desired. The bug will eventually be fixed, but in
the mean time, this will get users unstuck.