On Wed, Mar 21, 2012 at 5:44 PM, Larry Gritz <[email protected]> wrote:

> I think it's already set up to view individual channels, including those
> beyond 0-3.  The "." and "," keys move you forward and backwards through
> the channels.  So really "AOV support" is just a matter of (1) making it
> show extra channels as color, rather than just one channel at a time; (2)
> adding some kind of menu or control that lets you select channel by *name*
> rather than just number.  That doesn't even sound like a whole-summer
> project to me, but maybe could be one component of a "improve 2 or 3 things
> about iv" kind of proposal, or could be a "stretch goal" of somebody doing
> a larger iv-related task if they finish early.
>

yeah, I had a further look at the code and realized that it's already very
close.  I'll probably tackle this if no one else does.

we will need a helper function that can take a list of channel names and
generate a list of layer names and a list of channel indices for each
layer.  the OpenEXR spec covers this: "Grouping is done using a naming
convention: channel C in layer L is called L.C"  and the "specialized RGBA
image interface assumes that channels with the names "R", "G", "B" and "A"
mean red, green, blue and alpha".

so the list of channel names ["R", "G", "B", "A", "foo.alpha", "foo.red",
"foo.green", "foo.blue"] would generate the layers "RGBA", "foo", and the
indices [0,1,2,3] and [5,6,7,4]

Should this be handled by ImageSpec? perhaps with new members like this:

std::vector<std::string> layernames;  // Names for each layer
std::vector< std::vector<int> > layerchannels; // Channel indices for each
layer

It would then be the responsibility of each ImageInput class to fill this
out based on the convention for its format, just as they currently do with
channelnames.

Alternately, we could make this an IV-only function, and simply use the EXR
convention across all input formats (including sockets).

-chad





>
>
>
>
> On Mar 20, 2012, at 11:55 AM, Chad Dombrova wrote:
>
> I've been reviewing iv as a possible render viewer for the Maya-to-Arnold
> translator.  I came up a this list of requirements for a production-ready
> render viewer viewer:
>
> [x] pan/zoom
> [x] handles float data
> [x] interactively apply exposure/gamma corrections
> [ ] displays multiple AOVs
> [ ] streams multiple AOVs
> [ ] provides a catalog of previous renders
> [x] performs A/B comparisons (basic toggle)
> [x] pixel sampler
> [?] interactively apply LUTs (via OCIO?)
>
> the two main requirements that are missing are socket streaming (which I
> already emailed about and will be looking into) and display of layers for
> extended formats like openEXR. this will also become important if we intend
> to stream many AOVs to iv at once.
>
> so, from my totally outside perspective, an awesome GSoC project might be
> multi-layer support in iv ;)
>
> -chad
>
>
>
> --
> Larry Gritz
> [email protected]
>
>
>
> _______________________________________________
> Oiio-dev mailing list
> [email protected]
> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>
>
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to