Added support for 'alias' colorspaces, and added alias color spaces with compact...
[OpenColorIO-Configs.git] / aces_1.0.0 / python / aces_ocio / create_red_colorspaces.py
index b87eb4a..5443f16 100644 (file)
@@ -6,6 +6,7 @@ Implements support for *RED* colorspaces conversions and transfer functions.
 """
 
 import array
+import os
 
 import aces_ocio.generate_lut as genlut
 from aces_ocio.utilities import ColorSpace, mat44_from_mat33
@@ -25,7 +26,8 @@ def create_RED_log_film(gamut,
                         transfer_function,
                         name,
                         lut_directory,
-                        lut_resolution_1d):
+                        lut_resolution_1d,
+                        aliases=[]):
     """
     Object description.
 
@@ -50,6 +52,7 @@ def create_RED_log_film(gamut,
 
     cs = ColorSpace(name)
     cs.description = name
+    cs.aliases = aliases
     cs.equality_group = ''
     cs.family = 'RED'
     cs.is_data = False
@@ -75,12 +78,13 @@ def create_RED_log_film(gamut,
             data[c] = cineon_to_linear(1023.0 * c / (lut_resolution_1d - 1))
 
         lut = 'CineonLog_to_linear.spi1d'
-        genlut.write_SPI_1d(lut_directory + '/' + lut,
-                            0.0,
-                            1.0,
-                            data,
-                            lut_resolution_1d,
-                            1)
+        genlut.write_SPI_1d(
+            os.path.join(lut_directory, lut),
+            0.0,
+            1.0,
+            data,
+            lut_resolution_1d,
+            1)
 
         cs.to_reference_transforms.append({
             'type': 'lutFile',
@@ -151,7 +155,8 @@ def create_colorspaces(lut_directory, lut_resolution_1d):
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
+        lut_resolution_1d,
+        ["rlf_dgn"])
     colorspaces.append(RED_log_film_dragon)
 
     RED_log_film_dragon2 = create_RED_log_film(
@@ -159,7 +164,8 @@ def create_colorspaces(lut_directory, lut_resolution_1d):
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
+        lut_resolution_1d,
+        ["rlf_dgn2"])
     colorspaces.append(RED_log_film_dragon2)
 
     RED_log_film_color2 = create_RED_log_film(
@@ -167,7 +173,8 @@ def create_colorspaces(lut_directory, lut_resolution_1d):
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
+        lut_resolution_1d,
+        ["rlf_rc2"])
     colorspaces.append(RED_log_film_color2)
 
     RED_log_film_color3 = create_RED_log_film(
@@ -175,7 +182,8 @@ def create_colorspaces(lut_directory, lut_resolution_1d):
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
+        lut_resolution_1d,
+        ["rlf_rc3"])
     colorspaces.append(RED_log_film_color3)
 
     RED_log_film_color4 = create_RED_log_film(
@@ -183,57 +191,64 @@ def create_colorspaces(lut_directory, lut_resolution_1d):
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
+        lut_resolution_1d,
+        ["rlf_rc4"])
     colorspaces.append(RED_log_film_color4)
 
     # Linearization only
-    RED_log_film_dragon = create_RED_log_film(
+    RED_log_film = create_RED_log_film(
         '',
         'REDlogFilm',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_dragon)
+        lut_resolution_1d,
+        ["crv_rlf"])
+    colorspaces.append(RED_log_film)
 
     # Primaries only
-    RED_log_film_dragon = create_RED_log_film(
+    RED_dragon = create_RED_log_film(
         'DRAGONcolor',
         '',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_dragon)
+        lut_resolution_1d,
+        ["lin_dgn"])
+    colorspaces.append(RED_dragon)
 
-    RED_log_film_dragon2 = create_RED_log_film(
+    RED_dragon2 = create_RED_log_film(
         'DRAGONcolor2',
         '',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_dragon2)
+        lut_resolution_1d,
+        ["lin_dgn2"])
+    colorspaces.append(RED_dragon2)
 
-    RED_log_film_color2 = create_RED_log_film(
+    RED_color2 = create_RED_log_film(
         'REDcolor2',
         '',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_color2)
+        lut_resolution_1d,
+        ["lin_rc2"])
+    colorspaces.append(RED_color2)
 
-    RED_log_film_color3 = create_RED_log_film(
+    RED_color3 = create_RED_log_film(
         'REDcolor3',
         '',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_color3)
+        lut_resolution_1d,
+        ["lin_rc3"])
+    colorspaces.append(RED_color3)
 
-    RED_log_film_color4 = create_RED_log_film(
+    RED_color4 = create_RED_log_film(
         'REDcolor4',
         '',
         'REDlogFilm',
         lut_directory,
-        lut_resolution_1d)
-    colorspaces.append(RED_log_film_color4)
+        lut_resolution_1d,
+        ["lin_rc4"])
+    colorspaces.append(RED_color4)
 
     return colorspaces