RV OCIO not matching Nuke

I’m using RV with an OCIO config and am trying to do a colorspace conversion from ACES2065-1 to ‘Output - Rec.709’. The OCIOColorSpace conversion in Nuke, using the same OCIO config file, appears to be working correctly. In RV the same colorspace conversion isn’t matching … the gamma appears correct, but not the gamut. The following code in my custom RV Package results in the chroma not matching the same “ACES - ACES2065-1” → “Output - Rec.709” in Nuke:

RV Package snippet:
look_pipe_nodes = [“OCIO”]
commands.setStringProperty("%s.pipeline.nodes" % lookPipeNode, look_pipe_nodes, True)
ociolook_nodes = extra_commands.nodesInGroupOfType(lookPipeNode, “OCIO”)
ocio_ap0_to_rec709_node = ociolook_nodes[0]
commands.setStringProperty("%s.ocio.function" % ocio_ap0_to_rec709_node, [“color”])
commands.setStringProperty("%s.ocio.inColorSpace" % ocio_ap0_to_rec709_node, [“ACES - ACES2065-1”])
commands.setStringProperty("%s.ocio_color.outColorSpace" % ocio_ap0_to_rec709_node, [“Output - Rec.709”])
commands.setIntProperty("%s.ocio.active" % ocio_ap0_to_rec709_node, [1], True)

The result in RV is more cyan than Nuke.

I can get closer using an OCIO Look in RV and changing the ‘process space’ to be ‘Output - Rec.709’ in RV … but this results in the RV image being actually slightly less cyan than Nuke compared to the pure OCIO colorspace transform situation above.

RV Package snippet:
ociolook_nodes = extra_commands.nodesInGroupOfType(lookPipeNode, “OCIOLook”)
ocio_ap0_to_rec709_node = ociolook_nodes[0]
commands.setStringProperty("%s.ocio_look.look" % ocio_ap0_to_rec709_node, [“ACES2065-1_to_rec709_ps-rec709”])
commands.setIntProperty("%s.ocio.active" % ocio_ap0_to_rec709_node, [1], True)

OCIO config snippet:

  • !
    name: ACES2065-1_to_rec709_ps-rec709
    process_space: Output - Rec.709
    transform: ! {src: default, dst: Output - Rec.709}

However, the OCIOColorSpace transform AND the OCIOLookTransform are identical within Nuke, but in RV they don’t match.

Clearly I’m missing something, or are RV and Nuke interpreting the same OCIO config differently, which seems … crazy?