/docs/userguide/tool_overview.rst

http://github.com/imageworks/OpenColorIO · ReStructuredText · 186 lines · 120 code · 66 blank · 0 comment · 0 complexity · 04ef64f8af79da8bd4b9c004ab3ceda2 MD5 · raw file

  1. ..
  2. SPDX-License-Identifier: CC-BY-4.0
  3. Copyright Contributors to the OpenColorIO Project.
  4. .. _userguide-tooloverview:
  5. Tool overview
  6. =============
  7. OCIO is comprised of many parts. At the lowest level there is the C++ API.
  8. This API can be used in applications and plugins
  9. Note that all these plugins use the same config file to define color spaces,
  10. roles and so on. For information on setting up configurations, see
  11. :ref:`configurations`
  12. The API
  13. *******
  14. Most users will never directly interact with the C++ API. However the API is
  15. used by all the supplied applications (e.g :ref:`overview-ocio2icc`) and plugins
  16. (e.g the :ref:`overview-nukeplugins`)
  17. To get started with the API, see the :ref:`developer-guide`
  18. .. _overview-ociocheck:
  19. ociocheck
  20. *********
  21. This is a command line tool which shows an overview of an OCIO config
  22. file, and check for obvious errors
  23. For example, the following shows the output of a config with a typo -
  24. the colorspace used for ``compositing_log`` is not incorrect::
  25. $ ociocheck --iconfig example.ocio
  26. OpenColorIO Library Version: 0.8.3
  27. OpenColorIO Library VersionHex: 525056
  28. Loading example.ocio
  29. ** General **
  30. Search Path: luts
  31. Working Dir: /tmp
  32. Default Display: sRGB
  33. Default View: Film
  34. ** Roles **
  35. ncf (default)
  36. lnf (scene_linear)
  37. NOT DEFINED (compositing_log)
  38. ** ColorSpaces **
  39. lnf
  40. lgf
  41. ncf
  42. srgb8 -- output only
  43. ERROR: Config failed sanitycheck. The role 'compositing_log' refers to a colorspace, 'lgff', which is not defined.
  44. Tests complete.
  45. It cannot verify the defined color transforms are "correct", only that
  46. the config file can be loaded by OCIO without error. Some of the
  47. problems it will detect are:
  48. * Duplicate colorspace names
  49. * References to undefined colorspaces
  50. * Required roles being undefined
  51. * At least one display device is defined
  52. As with all the OCIO command line tools, you can use the `--help` argument to
  53. read a description and see the other arguments accepted::
  54. $ ociocheck --help
  55. ociocheck -- validate an OpenColorIO configuration
  56. usage: ociocheck [options]
  57. --help Print help message
  58. --iconfig %s Input .ocio configuration file (default: $OCIO)
  59. --oconfig %s Output .ocio file
  60. .. _overview-ociobakelut:
  61. ociobakelut
  62. ***********
  63. A command line tool which bakes a color transform into various color
  64. lookup file formats ("a LUT")
  65. This is intended for applications that have not directly integrated
  66. OCIO, but can load LUT files
  67. If we want to create a ``lnf`` to ``srgb8`` viewer LUT for Houdini's
  68. MPlay::
  69. $ ociobakelut --inputspace scene_linear --shaperspace lg10 --outputspace srgb8 --format houdini houdini__lnf_to_lg10_to_srgb8.lut
  70. The ``--inputspace`` and ``-outputspace`` options specify the
  71. colorspace of the input image, and the displayed image.
  72. Since a 3D LUT can only practically operate on 0-1 (e.g a Log image),
  73. the ``--shaperspace`` option is specified. This uses the Houdini LUT's
  74. 1D "pretransform" LUT to do "lnf" to "lg10", then the 3D LUT part to
  75. go from "lg10" to "srgb8" (basically creating a single file containing
  76. a 1D linear-to-log LUT, and a 3D log-to-sRGB LUT)
  77. To make a log to sRGB LUT for Flame, the usage is similar, except the
  78. shaperspace option is omitted, as the input colorspace does not have
  79. values outside 0.0-1.0 (being a Log space)::
  80. $ ociobakelut --inputspace lg10 --outputspace srgb8 --format flame flame__lg10_to_srgb.3dl
  81. See the :ref:`faq-supportedlut` section for a list of formats that
  82. support baking
  83. .. TODO: For more information on baking LUT's, see :ref:`userguide-bakelut`
  84. .. _overview-ocio2icc:
  85. ocio2icc
  86. ********
  87. A command line tool to generate an ICC "proofing" profile from a color space
  88. transform, which can be used in applications such as Photoshop.
  89. A common workflow is for matte-painters to work on sRGB files in Photoshop. An
  90. ICC profile is used to view the work with the same film emulation transform as
  91. used in other departments.
  92. .. TODO: Link to more elaborate description
  93. .. _overview-ocioconvert:
  94. ocioconvert
  95. ***********
  96. Loads an image, applies a color transform, and saves it to a new file.
  97. OpenImageIO is used to open and save the file, so a wide range of formats are
  98. supported.
  99. .. TODO: Link to more elaborate description
  100. .. _overview-ociodisplay:
  101. ociodisplay
  102. ***********
  103. A basic image viewer. Uses OpenImageIO to load images, and displays them using
  104. OCIO and typical viewer controls (scene-linear exposure control and a
  105. post-display gamma control)
  106. May be useful to users to quickly check colorspace configuration, but
  107. primarily a demonstration of the OCIO API
  108. .. TODO: Link to more elaborate description
  109. .. _overview-nukeplugins:
  110. Nuke plugins
  111. ************
  112. A set of OCIO nodes for The Foundry's Nuke, including:
  113. * OCIOColorSpace, transforms between two color spaces (similar to the built-in
  114. "ColorSpace" node, but the colorspaces are described in the OCIO config file)
  115. * OCIODisplay to be used as viewer processes
  116. * OCIOFileTransform loads a transform from a file (e.g a 1D or 3D LUT), and
  117. applies it
  118. * OCIOCDLTransform applies CDL-compliant grades, and includes utilities to
  119. create/load ASC CDL files
  120. .. TODO - Link to more elaborate description