Hello, Just had a quick question with regards to channel names in multiview (stereo) exr's.
According to the documentation here: http://www.openexr.com/MultiViewOpenEXR.pdf The view name must be the ultimate layer name, that is, the penultimate > period-delimited component in > each channel name. In other words, the view name is followed by a period > and a final channel name in the > format *layer.view.channel* or *view.channel*. > But it appears as though nuke writes its layers and channels in* view.layer.channel* order. Is there a reason for this behaviour? This means that interoperability between applications where multiple channels / layers exist is problematic. Below is a script that will write out the layer "rgbaz" with both left and right views, exhibiting the problem. Nuke is unable to read the written file back in. Here is some relevant output from the exrheader application: channels (type chlist): rgbaz.a, 16-bit floating-point, sampling 1 1 rgbaz.b, 16-bit floating-point, sampling 1 1 rgbaz.g, 16-bit floating-point, sampling 1 1 rgbaz.r, 16-bit floating-point, sampling 1 1 right.rgbaz.a, 16-bit floating-point, sampling 1 1 right.rgbaz.b, 16-bit floating-point, sampling 1 1 right.rgbaz.g, 16-bit floating-point, sampling 1 1 right.rgbaz.r, 16-bit floating-point, sampling 1 1 multiView (type stringvector): "left" "right" Cheers, Mark NB: The script below was written in the Nuke 8 beta, but will open in most Nuke versions. The problem was reproducible as far back as I tested, (nuke 6.2v3) #! /opt/nuke8.0v1b48/libnuke-8.0.v1b48.so -nx version 8.0 v1b48 define_window_layout_xml {<?xml version="1.0" encoding="UTF-8"?> <layout version="1.0"> <window x="42" y="48" w="1680" h="1024" screen="0"> <splitter orientation="1"> <split size="1062"/> <splitter orientation="1"> <split size="40"/> <dock id="" hideTitles="1" activePageId="Toolbar.1"> <page id="Toolbar.1"/> </dock> <split size="1018"/> <splitter orientation="2"> <split size="585"/> <dock id="" activePageId="Viewer.1"> <page id="Viewer.1"/> </dock> <split size="412"/> <dock id="" activePageId="DAG.1"> <page id="DAG.1"/> <page id="Curve Editor.1"/> <page id="DopeSheet.1"/> </dock> </splitter> </splitter> <split size="614"/> <dock id="" activePageId="Properties.1"> <page id="Properties.1"/> </dock> </splitter> </window> </layout> } Root { inputs 0 name /tmp/nuke8_channelbug.nk format "2048 1556 0 0 2048 1556 1 2K_Super_35(full-ap)" proxy_type scale proxy_format "1024 778 0 0 1024 778 1 1K_Super_35(full-ap)" views "left #ff0000 right #00ff00" } add_layer {rgbaz rgbaz.r rgbaz.g rgbaz.b rgbaz.a rgbaz.z} Constant { inputs 0 channels rgbaz color {1 0 0 0} format "1920 1080 0 0 1920 1080 1 HD" name Constant2 xpos -178 ypos -211 } Text { output rgbaz message RIGHT font /usr/share/fonts/liberation/LiberationMono-Regular.ttf size 400 yjustify center box {512 389 1784 1167} translate {-60 -210} center {1024 778} color {0 1 0 0} name Text2 xpos -178 ypos -129 } Remove { channels rgba name Remove2 xpos -178 ypos -93 } Constant { inputs 0 channels rgbaz color {0 0 1 0} format "1920 1080 0 0 1920 1080 1 HD" name Constant1 xpos -285 ypos -213 } Text { output rgbaz message LEFT font /usr/share/fonts/liberation/LiberationMono-Regular.ttf size 400 yjustify center box {512 389 1536 1167} translate {-60 -210} center {1024 778} color {0 1 0 0} name Text1 xpos -285 ypos -129 } Remove { channels rgba name Remove1 xpos -285 ypos -95 } JoinViews { inputs 2 name JoinViews1 xpos -236 ypos -54 viewassoc "left\nright" } Write { channels all file /tmp/test.exr file_type exr version 7 name Write1 xpos -236 ypos -30 } Viewer { frame 1 channels rgbaz input_process false name Viewer1 xpos -235 ypos 44 }
_______________________________________________ Nuke-users mailing list [email protected], http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
