nuke-default config only reports 1 view with OCIO2


Paul Miller
 

I just noticed that nuke-default only reports one of its three views (sRGB) when queried with the OCIO2 API.

Is this a known issue or is it possible I'm somehow using the API wrong? Worked fine with OCIO 1.1.


Doug Walker
 

Thanks for the report Paul. We will investigate the issue.

It's good timing because we are actually preparing a PR involving display/view stuff at the moment anyway.

Doug


Patrick Hodoul
 

Hi Paul,

Following the work on OCIOv2 we discovered & fixed an issue around the list of active displays & views in the OCIOv1 implementation.

Let me first explain a little bit some lines from the nuke config impacting the displays & views:

displays:
  default:
    - !<View> {name: None, colorspace: raw}
    - !<View> {name: sRGB, colorspace: sRGB}
    - !<View> {name: rec709, colorspace: rec709}
 
active_displays: [default]
active_views: [sRGB]

The first five lines define the list of displays and views, In the example, there is only one display named 'default' which owns three views named 'None', 'sRGB', and 'rec709'.
The last two lines define the active displays and views. Here, only the 'default' display and the 'sRGB' view are active i.e. the others are hidden.

The OCIOv1 implementation was only implementing the filtering and ordering of the active displays i.e. the active view line was ignored. So, the master branch (i.e. OCIOV2) does now correctly handle the two active lists explaining why only the 'sRGB' view is accessible. In order to see all the views, the last line must be removed or changed to 'active_views: []'.

Note: As mentioned by Doug, a pull request around displays/views is coming. Part of the changes is to add some methods in the public API to access all the displays & views.

Note: With or without the active lists in the config, the envvars OCIO_ACTIVE_DISPLAYS & OCIO_ACTIVE_VIEWS filter and order the displays & views (bypassing the active lists from the config).

Patrick 
 
 


Paul Miller
 

Aha! Thanks for explaining that Patrick. I wasn't aware that OCIO 1 was doing it "wrong".


On 6/9/20 8:08 AM, Patrick Hodoul wrote:
Hi Paul,

Following the work on OCIOv2 we discovered & fixed an issue around the list of active displays & views in the OCIOv1 implementation.

Let me first explain a little bit some lines from the nuke config impacting the displays & views:

displays:
  default:
    - !<View> {name: None, colorspace: raw}
    - !<View> {name: sRGB, colorspace: sRGB}
    - !<View> {name: rec709, colorspace: rec709}
 
active_displays: [default]
active_views: [sRGB]

The first five lines define the list of displays and views, In the example, there is only one display named 'default' which owns three views named 'None', 'sRGB', and 'rec709'.
The last two lines define the active displays and views. Here, only the 'default' display and the 'sRGB' view are active i.e. the others are hidden.

The OCIOv1 implementation was only implementing the filtering and ordering of the active displays i.e. the active view line was ignored. So, the master branch (i.e. OCIOV2) does now correctly handle the two active lists explaining why only the 'sRGB' view is accessible. In order to see all the views, the last line must be removed or changed to 'active_views: []'.

Note: As mentioned by Doug, a pull request around displays/views is coming. Part of the changes is to add some methods in the public API to access all the displays & views.

Note: With or without the active lists in the config, the envvars OCIO_ACTIVE_DISPLAYS & OCIO_ACTIVE_VIEWS filter and order the displays & views (bypassing the active lists from the config).

Patrick