[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50120] branches/soc-2011-tomato: Color Management: pipeline cleanup

Sergey Sharybin sergey.vfx at gmail.com
Wed Aug 22 16:23:08 CEST 2012


Revision: 50120
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50120
Author:   nazgul
Date:     2012-08-22 14:23:08 +0000 (Wed, 22 Aug 2012)
Log Message:
-----------
Color Management: pipeline cleanup

- Move color management settings to scene, so it's now clear for
  all areas (such as compositor, sequencer) which settings to
  use for display buffers

- Currently removed per-editor color management settings. It could
  be nice to have them, but they don't fit nicely into overall
  pipeline and could be added as a override settings for display
  only later.

- Make sequencer working in space defined by sequencer_workspace
  role in OCIO configuration file.
  If this role is not set, sequencer will fallback to legacy sRGB
  Gamma 2.2 space.

  Currently use vd16 color space for sequencer. Not sure what exactly
  this color space is, but it's pretty close to SPI Film view and
  it's still invertable.

- Sequencer will now output linear float buffers, not color managed
  float buffers.
  Before this sequencer used to output float buffers in sRGB space,
  which was sequencer's working space. Now it can not output buffers
  in this space since other areas are not aware of this space.
  This also makes it's consistent that all float buffers in Blender
  are in linear space.

- When saving render result into byte file format scene's display
  transform would be applied on this buffer.
  When saving files from image editor, there'll be a display
  transform settings which are default set to scene's settings but
  could also be overwritten.

Additional details are there (would be extended soon):

  http://wiki.blender.org/index.php/User:Nazg-gul/ColorManagement

Modified Paths:
--------------
    branches/soc-2011-tomato/intern/opencolorio/ocio_capi.h
    branches/soc-2011-tomato/release/datafiles/colormanagement/config.ocio
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_render.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_scene.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_clip.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_image.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_info.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_node.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_sequencer.py
    branches/soc-2011-tomato/source/blender/blenkernel/intern/colortools.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/scene.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/sequencer.c
    branches/soc-2011-tomato/source/blender/editors/include/UI_interface.h
    branches/soc-2011-tomato/source/blender/editors/interface/interface_templates.c
    branches/soc-2011-tomato/source/blender/editors/screen/screen_ops.c
    branches/soc-2011-tomato/source/blender/editors/screen/screendump.c
    branches/soc-2011-tomato/source/blender/editors/space_clip/clip_draw.c
    branches/soc-2011-tomato/source/blender/editors/space_clip/space_clip.c
    branches/soc-2011-tomato/source/blender/editors/space_image/image_buttons.c
    branches/soc-2011-tomato/source/blender/editors/space_image/image_draw.c
    branches/soc-2011-tomato/source/blender/editors/space_image/image_ops.c
    branches/soc-2011-tomato/source/blender/editors/space_image/space_image.c
    branches/soc-2011-tomato/source/blender/editors/space_node/drawnode.c
    branches/soc-2011-tomato/source/blender/editors/space_node/space_node.c
    branches/soc-2011-tomato/source/blender/editors/space_sequencer/sequencer_draw.c
    branches/soc-2011-tomato/source/blender/imbuf/IMB_colormanagement.h
    branches/soc-2011-tomato/source/blender/imbuf/IMB_imbuf.h
    branches/soc-2011-tomato/source/blender/imbuf/IMB_imbuf_types.h
    branches/soc-2011-tomato/source/blender/imbuf/intern/colormanagement.c
    branches/soc-2011-tomato/source/blender/makesdna/DNA_color_types.h
    branches/soc-2011-tomato/source/blender/makesdna/DNA_scene_types.h
    branches/soc-2011-tomato/source/blender/makesdna/DNA_space_types.h
    branches/soc-2011-tomato/source/blender/makesdna/DNA_windowmanager_types.h
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_color.c
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_scene.c
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_space.c
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_ui_api.c
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_wm.c
    branches/soc-2011-tomato/source/blender/render/intern/source/pipeline.c
    branches/soc-2011-tomato/source/blender/windowmanager/intern/wm_window.c

Added Paths:
-----------
    branches/soc-2011-tomato/release/datafiles/colormanagement/luts/srgb.spi1d
    branches/soc-2011-tomato/release/datafiles/colormanagement/luts/vd16.spi1d

Modified: branches/soc-2011-tomato/intern/opencolorio/ocio_capi.h
===================================================================
--- branches/soc-2011-tomato/intern/opencolorio/ocio_capi.h	2012-08-22 13:46:23 UTC (rev 50119)
+++ branches/soc-2011-tomato/intern/opencolorio/ocio_capi.h	2012-08-22 14:23:08 UTC (rev 50120)
@@ -42,6 +42,7 @@
 	#define OCIO_ROLE_SCENE_LINEAR	"scene_linear"
 	#define OCIO_ROLE_COLOR_PICKING	"color_picking"
 	#define OCIO_ROLE_TEXTURE_PAINT	"texture_paint"
+	#define OCIO_ROLE_SEQUENCER	"sequencer"
 
 	OCIO_DECLARE_HANDLE(ConstConfigRcPtr);
 	OCIO_DECLARE_HANDLE(ConstColorSpaceRcPtr);

Modified: branches/soc-2011-tomato/release/datafiles/colormanagement/config.ocio
===================================================================
--- branches/soc-2011-tomato/release/datafiles/colormanagement/config.ocio	2012-08-22 13:46:23 UTC (rev 50119)
+++ branches/soc-2011-tomato/release/datafiles/colormanagement/config.ocio	2012-08-22 14:23:08 UTC (rev 50120)
@@ -8,14 +8,10 @@
 
 roles:
   color_picking: raw
-  color_timing: adx10
-  compositing_log: adx10
-  data: raw
-  default: raw
-  matte_paint: raw
   reference: aces
   scene_linear: rec709
   texture_paint: raw
+  sequencer: vd16
 
 displays:
   p3dci:
@@ -23,19 +19,19 @@
     - !<View> {name: Log, colorspace: adx10}
     - !<View> {name: RRT, colorspace: rrt_p3dci}
   sRGB:
+    - !<View> {name: Gamma2.2, colorspace: sRGB}
     - !<View> {name: Raw, colorspace: raw}
-    - !<View> {name: Log, colorspace: adx10}
     - !<View> {name: RRT, colorspace: rrt_srgb}
-    - !<View> {name: SPI Film, colorspace: srgb8}
-    - !<View> {name: SPI Log, colorspace: lg10}
-    - !<View> {name: Nuke rec709, colorspace: nuke_rec709}
+    - !<View> {name: Film, colorspace: srgb8}
+    - !<View> {name: Log, colorspace: lg10}
+    - !<View> {name: rec709, colorspace: nuke_rec709}
   xyz:
     - !<View> {name: Raw, colorspace: raw}
     - !<View> {name: Log, colorspace: adx10}
     - !<View> {name: RRT, colorspace: rrt_xyz}
 
 active_displays: [sRGB, p3dci, xyz]
-active_views: [RRT, Log, SPI Film, SPI Log, Raw]
+active_views: [Gamma2.2, RRT, Log, Film, Log, Raw, rec709]
 
 colorspaces:
   - !<ColorSpace>
@@ -296,3 +292,48 @@
       children:
         - !<FileTransform> {src: rec709.spi1d, interpolation: linear}
         - !<FileTransform> {src: rec709_to_aces.spimtx, interpolation: nearest}
+
+  - !<ColorSpace>
+    name: sRGB
+    family: ""
+    equalitygroup: ""
+    bitdepth: 32f
+    description: |
+      Standard RGB Display Space
+    isdata: false
+    allocation: uniform
+    allocationvars: [-0.125, 1.125]
+    to_reference: !<GroupTransform>
+      children:
+        - !<FileTransform> {src: srgb.spi1d, interpolation: linear}
+        - !<FileTransform> {src: rec709_to_aces.spimtx, interpolation: nearest}
+
+  - !<ColorSpace>
+    name: vd16
+    family: vd
+    equalitygroup:
+    bitdepth: 16ui
+    description: |
+      vd16 : The simple video conversion from a gamma 2.2 srgb space
+    isdata: false
+    allocation: uniform
+    to_reference: !<GroupTransform>
+      children:
+        - !<FileTransform> {src: vd16.spi1d, interpolation: nearest}
+        - !<FileTransform> {src: rec709_to_aces.spimtx, interpolation: linear}
+
+  - !<ColorSpace>
+    name: Gamma2.2
+    family: ""
+    equalitygroup: ""
+    bitdepth: 32f
+    description: |
+      Emulates a idealized Gamma 2.2 display device.
+    isdata: false
+    allocation: uniform
+    allocationvars: [0, 1]
+    to_reference: !<GroupTransform>
+      children:
+        #- !<FileTransform> {src: rec709.spi1d, interpolation: linear}
+        - !<ExponentTransform> {value: [2.2, 2.2, 2.2, 1]}
+        - !<FileTransform> {src: rec709_to_aces.spimtx, interpolation: linear}

Added: branches/soc-2011-tomato/release/datafiles/colormanagement/luts/srgb.spi1d
===================================================================
--- branches/soc-2011-tomato/release/datafiles/colormanagement/luts/srgb.spi1d	                        (rev 0)
+++ branches/soc-2011-tomato/release/datafiles/colormanagement/luts/srgb.spi1d	2012-08-22 14:23:08 UTC (rev 50120)
@@ -0,0 +1,4107 @@
+Version 1
+From -0.125 1.125
+Length 4101
+Components 1
+{
+        -0.00967492260062
+        -0.00965132522842
+        -0.00962772785623
+        -0.00960413048403
+        -0.00958053311183
+        -0.00955693573964
+        -0.00953333836744
+        -0.00950974099524
+        -0.00948614362305
+        -0.00946254625085
+        -0.00943894887865
+        -0.00941535150646
+        -0.00939175413426
+        -0.00936815676206
+        -0.00934455938987
+        -0.00932096201767
+        -0.00929736464547
+        -0.00927376727328
+        -0.00925016990108
+        -0.00922657252888
+        -0.00920297515669
+        -0.00917937778449
+        -0.00915578041229
+        -0.0091321830401
+        -0.0091085856679
+        -0.0090849882957
+        -0.00906139092351
+        -0.00903779355131
+        -0.00901419617911
+        -0.00899059880692
+        -0.00896700143472
+        -0.00894340406252
+        -0.00891980669033
+        -0.00889620931813
+        -0.00887261194593
+        -0.00884901457374
+        -0.00882541720154
+        -0.00880181982934
+        -0.00877822245715
+        -0.00875462508495
+        -0.00873102771275
+        -0.00870743034056
+        -0.00868383296836
+        -0.00866023559616
+        -0.00863663822397
+        -0.00861304085177
+        -0.00858944347957
+        -0.00856584610738
+        -0.00854224873518
+        -0.00851865136298
+        -0.00849505399079
+        -0.00847145661859
+        -0.00844785924639
+        -0.0084242618742
+        -0.008400664502
+        -0.0083770671298
+        -0.00835346975761
+        -0.00832987238541
+        -0.00830627501321
+        -0.00828267764102
+        -0.00825908026882
+        -0.00823548289662
+        -0.00821188552443
+        -0.00818828815223
+        -0.00816469078003
+        -0.00814109340784
+        -0.00811749603564
+        -0.00809389866344
+        -0.00807030129125
+        -0.00804670391905
+        -0.00802310654685
+        -0.00799950917466
+        -0.00797591180246
+        -0.00795231443027
+        -0.00792871705807
+        -0.00790511968587
+        -0.00788152231368
+        -0.00785792494148
+        -0.00783432756928
+        -0.00781073019709
+        -0.00778713282489
+        -0.00776353545269
+        -0.0077399380805
+        -0.0077163407083
+        -0.0076927433361
+        -0.00766914596391
+        -0.00764554859171
+        -0.00762195121951
+        -0.00759835384732
+        -0.00757475647512
+        -0.00755115910292
+        -0.00752756173073
+        -0.00750396435853
+        -0.00748036698633
+        -0.00745676961414
+        -0.00743317224194
+        -0.00740957486974
+        -0.00738597749755
+        -0.00736238012535
+        -0.00733878275315
+        -0.00731518538096
+        -0.00729158800876
+        -0.00726799063656
+        -0.00724439326437
+        -0.00722079589217
+        -0.00719719851997
+        -0.00717360114778
+        -0.00715000377558
+        -0.00712640640338
+        -0.00710280903119
+        -0.00707921165899
+        -0.00705561428679
+        -0.0070320169146
+        -0.0070084195424
+        -0.0069848221702
+        -0.00696122479801
+        -0.00693762742581
+        -0.00691403005361
+        -0.00689043268142
+        -0.00686683530922
+        -0.00684323793702
+        -0.00681964056483
+        -0.00679604319263
+        -0.00677244582043
+        -0.00674884844824
+        -0.00672525107604
+        -0.00670165370384
+        -0.00667805633165
+        -0.00665445895945
+        -0.00663086158725
+        -0.00660726421506
+        -0.00658366684286
+        -0.00656006947066
+        -0.00653647209847
+        -0.00651287472627
+        -0.00648927735407
+        -0.00646567998188
+        -0.00644208260968
+        -0.00641848523748
+        -0.00639488786529
+        -0.00637129049309
+        -0.00634769312089
+        -0.0063240957487
+        -0.0063004983765
+        -0.0062769010043
+        -0.00625330363211
+        -0.00622970625991
+        -0.00620610888771
+        -0.00618251151552
+        -0.00615891414332
+        -0.00613531677112
+        -0.00611171939893
+        -0.00608812202673
+        -0.00606452465453
+        -0.00604092728234
+        -0.00601732991014
+        -0.00599373253794
+        -0.00597013516575
+        -0.00594653779355
+        -0.00592294042135
+        -0.00589934304916
+        -0.00587574567696
+        -0.00585214830476
+        -0.00582855093257
+        -0.00580495356037
+        -0.00578135618817
+        -0.00575775881598
+        -0.00573416144378
+        -0.00571056407158
+        -0.00568696669939
+        -0.00566336932719
+        -0.005639771955
+        -0.0056161745828
+        -0.0055925772106
+        -0.00556897983841
+        -0.00554538246621
+        -0.00552178509401
+        -0.00549818772182
+        -0.00547459034962
+        -0.00545099297742
+        -0.00542739560523
+        -0.00540379823303
+        -0.00538020086083
+        -0.00535660348864
+        -0.00533300611644
+        -0.00530940874424
+        -0.00528581137205
+        -0.00526221399985
+        -0.00523861662765
+        -0.00521501925546
+        -0.00519142188326
+        -0.00516782451106
+        -0.00514422713887
+        -0.00512062976667
+        -0.00509703239447
+        -0.00507343502228
+        -0.00504983765008
+        -0.00502624027788
+        -0.00500264290569
+        -0.00497904553349
+        -0.00495544816129
+        -0.0049318507891
+        -0.0049082534169
+        -0.0048846560447
+        -0.00486105867251
+        -0.00483746130031
+        -0.00481386392811
+        -0.00479026655592
+        -0.00476666918372
+        -0.00474307181152
+        -0.00471947443933
+        -0.00469587706713
+        -0.00467227969493
+        -0.00464868232274
+        -0.00462508495054
+        -0.00460148757834
+        -0.00457789020615
+        -0.00455429283395
+        -0.00453069546175
+        -0.00450709808956
+        -0.00448350071736
+        -0.00445990334516
+        -0.00443630597297
+        -0.00441270860077
+        -0.00438911122857
+        -0.00436551385638
+        -0.00434191648418
+        -0.00431831911198
+        -0.00429472173979
+        -0.00427112436759
+        -0.00424752699539
+        -0.0042239296232
+        -0.004200332251
+        -0.0041767348788
+        -0.00415313750661
+        -0.00412954013441
+        -0.00410594276221

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list