Yeah, it looks like what's missing is the Arnold metadata for the other AOVs besides RGBA.

I'll defer to Larry on the possibilities there (I suspect a Python script may be the easiest way to go), but based on your channel names and need for this metadata, I'm guessing you're trying to create a merged EXR to pass to noice. For what it's worth, I've actually found that it's easier to just feed in separate files for all the AOVs, since noice will just decide what's available based on the metadata of all the input files.

-Nathan

On 8/6/2019 4:12 PM, Larry Gritz wrote:
Is it missing the AOVs? (The channels, the pixels?)

Or is it just not combining the *metadata* from all the source images into the output?


On Aug 6, 2019, at 4:06 PM, Lydia Lam <l...@psyop.tv> wrote:

They are exr's.  So I have the following aovs:  beauty, diffuse_albedo_noice, variance, N_noice, Z_noice:

./oiiotool beauty.0001.exr diffuse_albedo_noice.0001.exr --chappend -chname ,,,,"diffuse_albedo_noice.R","diffuse_albedo_noice.G","diffuse_albedo_noice.B" -o merged_bd.0001.exr
./oiiotool merged_bd.0001.exr variance.0001.exr --chappend --chname ,,,,,,,"variance.R","variance.G","variance.B","variance.A" -o merged_bdv.0001.exr
...<all the aovs>...
./oiiotool ...-o merged_all_aovs.0001.exr

When I query the final merged image, 
./oiiotool --info:verbose=1 merged_all_aovs.0001.exr
maya_render.0001.exr:  960 x 540, 15 channel, half openexr channel list: R, G, B, A, Z_noice, N_noice.Y, N_noice.Z, N_noice.X, diffuse_albedo_noice.R, diffuse_albedo_noice.G, diffuse_albedo_noice.B,  variance.R, variance.G, variance.B, variance.A
arnold / AA_samples: 2
arnold / aovs / RGBA / filter: "gaussian_filter"
arnold / aovs / RGBA / filter_width: 2
arnold / aovs / RGBA / lpe: 1
arnold / aovs / RGBA / source: "RGBA"
arnold / auto_transparency_depth: 10
arnold / bounds_max_x: 959
arnold / bounds_max_y: 539
...
It is missing the aovs after beauty.


Comparing it to the render from Maya
maya_render.0001.exr:  960 x 540, 15 channel, half openexr channel list: R, G, B, A, Z_noice, N_noice.Y, N_noice.Z, N_noice.X, diffuse_albedo_noice.R, diffuse_albedo_noice.G, diffuse_albedo_noice.B,  variance.R, variance.G, variance.B, variance.A
arnold / AA_samples: 2
arnold / aovs / diffuse_albedo_noice / filter: "gaussian_filter"
arnold / aovs / diffuse_albedo_noice / filter_width: 2
arnold / aovs / diffuse_albedo_noice / lpe: 1
arnold / aovs / diffuse_albedo_noice / source: "diffuse_albedo"
arnold / aovs / N_noice / filter: "gaussian_filter"
arnold / aovs / N_noice / filter_width: 2
arnold / aovs / N_noice / source: "N"
arnold / aovs / RGBA / filter: "gaussian_filter"
arnold / aovs / RGBA / filter_width: 2
arnold / aovs / RGBA / lpe: 1
arnold / aovs / RGBA / source: "RGBA"
arnold / aovs / variance / filter: "variance_filter"
arnold / aovs / variance / filter_width: 2
arnold / aovs / variance / lpe: 1
arnold / aovs / variance / source: "RGBA"
arnold / aovs / Z_noice / filter: "gaussian_filter"
arnold / aovs / Z_noice / filter_width: 2
arnold / aovs / Z_noice / source: "Z"
arnold / auto_transparency_depth: 10
arnold / bounds_max_x: 959
arnold / bounds_max_y: 539
...



On Tue, Aug 6, 2019 at 3:37 PM Larry Gritz <l...@larrygritz.com> wrote:
Yes, the command you want is --chappend, which takes two images (say, containing N channels and M channels) and combines them into a new image with N+M channels.

You said you tried this... can you show us a command line that shows exactly what you tried?

You may need a --chnames afterward to make the channel names make some kind of sense.

Also, what file format are you using?

Seeing the exact command you tried will probably answer all of the questions and then we'll know what to suggest.


On Aug 6, 2019, at 3:29 PM, Lydia Lam <l...@psyop.tv> wrote:

Is there a way to merge AOVs with oiiotool?  I have a sequence rendered from Maya with a bunch of separate passes.  I would like to merge them into one sequence without having to render again using 'merge AOVs' option.  The output should be a sequence of exr's with no subimages containing all the channels the different aov's.

I've tried using --siappendall but that returns one image with multiple subimages.  The number of channels is the number of channels at the top layer, not all the aovs.

I've also tried --chappend and merge the images one at a time while renaming the channels as I go.  This captured all the channels but did not preserve the aov information.  

Can oiiotool or OpenImageIO merge multiple images into one while preserving all the channels?  Thanks!


Lydia


--
Larry Gritz




_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

--
Larry Gritz





_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org


_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to