'get_LMTs_info',
'create_colorspaces']
-# Matrix converting *ACES AP1* primaries to *AP0*.
+# Matrix converting *ACES AP1* primaries to *ACES AP0*.
ACES_AP1_TO_AP0 = [0.6954522414, 0.1406786965, 0.1638690622,
0.0447945634, 0.8596711185, 0.0955343182,
-0.0055258826, 0.0040252103, 1.0015006723]
+# Matrix converting *ACES AP0* primaries to *ACES AP1*.
+ACES_AP0_TO_AP1 = [1.4514393161, -0.2365107469, -0.2149285693,
+ -0.0765537734, 1.1762296998, -0.0996759264,
+ 0.0083161484, -0.0060324498, 0.9977163014]
+
# Matrix converting *ACES AP0* primaries to *XYZ*.
ACES_AP0_TO_XYZ = [0.9525523959, 0.0000000000, 0.0000936786,
0.3439664498, 0.7281660966, -0.0721325464,
0.0000000000, 0.0000000000, 1.0088251844]
+# Matrix converting *ACES AP0* primaries to *XYZ*.
+ACES_XYZ_TO_AP0 = [1.0498110175, 0.0000000000, -0.0000974845,
+ -0.4959030231, 1.3733130458, 0.0982400361,
+ 0.0000000000, 0.0000000000, 0.9912520182]
+
def create_ACES():
"""
aces2065_1.family = 'ACES'
aces2065_1.is_data = False
aces2065_1.allocation_type = ocio.Constants.ALLOCATION_LG2
- aces2065_1.allocation_vars = [-15, 6]
+ aces2065_1.allocation_vars = [-8, 5, 0.00390625]
return aces2065_1
cs.equality_group = ''
cs.family = 'ACES'
cs.is_data = False
+ cs.allocation_type = ocio.Constants.ALLOCATION_UNIFORM
+ cs.allocation_vars = [min_value, max_value]
ctls = [os.path.join(aces_ctl_directory,
'ACEScc',
- 'ACEScsc.ACEScc_to_ACES.a1.0.0.ctl'),
- # This transform gets back to the *AP1* primaries.
- # Useful as the 1d LUT is only covering the transfer function.
- # The primaries switch is covered by the matrix below:
- os.path.join(aces_ctl_directory,
- 'ACEScg',
- 'ACEScsc.ACES_to_ACEScg.a1.0.0.ctl')]
- lut = '%s_to_ACES.spi1d' % name
+ 'ACEScsc.ACEScc_to_ACES.a1.0.0.ctl')]
+ lut = '%s_to_linear.spi1d' % name
lut = sanitize(lut)
'float',
input_scale,
1,
- {},
+ {'transferFunctionOnly':1},
cleanup,
aces_ctl_directory,
min_value,
- max_value)
+ max_value,
+ 1)
cs.to_reference_transforms = []
cs.to_reference_transforms.append({
ctls = [os.path.join(aces_ctl_directory,
'ACESproxy',
'ACEScsc.ACESproxy10i_to_ACES.a1.0.0.ctl'),
- # This transform gets back to the *AP1* primaries.
- # Useful as the 1d LUT is only covering the transfer function.
- # The primaries switch is covered by the matrix below:
- os.path.join(aces_ctl_directory,
- 'ACEScg',
- 'ACEScsc.ACES_to_ACEScg.a1.0.0.ctl')]
- lut = '%s_to_aces.spi1d' % name
+ # This transform gets back to the *AP1* primaries.
+ # Useful as the 1d LUT is only covering the transfer function.
+ # The primaries switch is covered by the matrix below:
+ os.path.join(aces_ctl_directory,
+ 'ACEScg',
+ 'ACEScsc.ACES_to_ACEScg.a1.0.0.ctl')]
+ lut = '%s_to_linear.spi1d' % name
lut = sanitize(lut)
1,
{},
cleanup,
- aces_ctl_directory)
+ aces_ctl_directory,
+ 0,
+ 1,
+ 1)
cs.to_reference_transforms = []
cs.to_reference_transforms.append({
cs.equality_group = ''
cs.family = 'ACES'
cs.is_data = False
+ cs.allocation_type = ocio.Constants.ALLOCATION_LG2
+ cs.allocation_vars = [-8, 5, 0.00390625]
cs.to_reference_transforms = []
cs.equality_group = ''
cs.family = 'Look'
cs.is_data = False
+ cs.allocation_type = ocio.Constants.ALLOCATION_LG2
+ cs.allocation_vars = [-8, 5, 0.00390625]
pprint.pprint(lmt_values)
shaper_input_scale,
shaper_params) = shaper_info
- shaper_lut = '%s_to_aces.spi1d' % shaper_name
+ shaper_lut = '%s_to_linear.spi1d' % shaper_name
if not os.path.exists(os.path.join(lut_directory, shaper_lut)):
ctls = [shaper_to_ACES_CTL % aces_ctl_directory]
1,
shaper_params,
cleanup,
- aces_ctl_directory)
+ aces_ctl_directory,
+ 0,
+ 1,
+ 1)
shaper_OCIO_transform = {
'type': 'lutFile',
if 'transformCTLInverse' in lmt_values:
ctls = [os.path.join(aces_ctl_directory,
- # TODO: Investigate "odt_values" undeclared
- # variable.
- odt_values['transformCTLInverse']),
+ lmt_values['transformCTLInverse']),
shaper_from_ACES_CTL % aces_ctl_directory]
lut = 'Inverse.%s.%s.spi3d' % (odt_name, shaper_name)
shaper_input_scale,
shaper_params,
cleanup,
- aces_ctl_directory)
+ aces_ctl_directory,
+ 0,
+ 1,
+ 1)
cs.to_reference_transforms.append({
'type': 'lutFile',
else:
shaper_params['legalRange'] = 0
- shaper_lut = '%s_to_aces.spi1d' % shaper_name
+ shaper_lut = '%s_to_linear.spi1d' % shaper_name
if not os.path.exists(os.path.join(lut_directory, shaper_lut)):
ctls = [shaper_to_ACES_CTL % aces_ctl_directory]
1,
shaper_params,
cleanup,
- aces_ctl_directory)
+ aces_ctl_directory,
+ 0,
+ 1,
+ 1)
shaper_OCIO_transform = {
'type': 'lutFile',
aces_ctl_directory,
'utilities',
'ACESlib.OCIO_shaper_log2_to_lin_param.a1.0.0.ctl')]
- lut = '%s_to_aces.spi1d' % name
+ lut = '%s_to_linear.spi1d' % name
lut = sanitize(lut)
cleanup,
aces_ctl_directory,
min_value,
- max_value)
+ max_value,
+ 1)
cs.to_reference_transforms = []
cs.to_reference_transforms.append({
ACES = create_ACES()
ACEScc = create_ACEScc(aces_ctl_directory, lut_directory,
- lut_resolution_1d, cleanup)
+ lut_resolution_1d, cleanup,
+ min_value=-0.35840, max_value=1.468)
colorspaces.append(ACEScc)
ACESproxy = create_ACESproxy(aces_ctl_directory, lut_directory,