Registered Extension Number

105

Revision

4

Extension and Version Dependencies

Other Extension Metadata

Last Modified Date

2019-04-26

IP Status

No known IP claims.

Contributors
  • Courtney Goeltzenleuchter, Google

Description

To be done.

New Enum Constants

  • Extending VkColorSpaceKHR:

    • VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT - supports the Display-P3 color space and applies an sRGB-like transfer function.

    • VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT - supports the extended sRGB color space and applies a linear transfer function.

    • VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT - supports the extended sRGB color space with an sRGB nonlinear transfer function.

    • VK_COLOR_SPACE_DCI_P3_LINEAR_EXT - supports the DCI-P3 color space and applies a linear OETF.

    • VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT - supports the DCI-P3 color space and applies the Gamma 2.6 OETF.

    • VK_COLOR_SPACE_BT709_LINEAR_EXT - supports the BT709 color space and applies a linear transfer function.

    • VK_COLOR_SPACE_BT709_NONLINEAR_EXT - supports the BT709 color space and applies the SMPTE 170M OETF.

    • VK_COLOR_SPACE_BT2020_LINEAR_EXT - supports the BT2020 color space and applies a linear OETF.

    • VK_COLOR_SPACE_HDR10_ST2084_EXT - supports HDR10 (BT2020 color space and applies the SMPTE ST2084 Perceptual Quantizer (PQ) OETF).

    • VK_COLOR_SPACE_DOLBYVISION_EXT - supports Dolby Vision (BT2020 color space, proprietary encoding, and applies the SMPTE ST2084 OETF).

    • VK_COLOR_SPACE_HDR10_HLG_EXT - supports HDR10 (BT2020 color space and applies the Hybrid Log Gamma (HLG) OETF).

    • VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT - supports the AdobeRGB color space and applies a linear OETF.

    • VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT - supports the AdobeRGB color space and applies the Gamma 2.2 OETF.

    • VK_COLOR_SPACE_PASS_THROUGH_EXT - color components used “as is”. Intended to allow application to supply data for color spaces not described here.

Issues

1) Does the spec need to specify which kinds of image formats support the color spaces?

RESOLVED: Pixel format is independent of color space (though some color spaces really want / need floating point color components to be useful). Therefore, do not plan on documenting what formats support which colorspaces. An application can call vkGetPhysicalDeviceSurfaceFormatsKHR to query what a particular implementation supports.

2) How does application determine if HW supports appropriate transfer function for a colorspace?

RESOLVED: Extension indicates that implementation must not do the OETF encoding if it is not sRGB. That responsibility falls to the application shaders. Any other native OETF / EOTF functions supported by an implementation can be described by separate extension.

Version History

  • Revision 1, 2016-12-27 (Courtney Goeltzenleuchter)

    • Initial version

  • Revision 2, 2017-01-19 (Courtney Goeltzenleuchter)

    • Add pass through and multiple options for BT2020.

    • Clean up some issues with equations not displaying properly.

  • Revision 3, 2017-06-23 (Courtney Goeltzenleuchter)

    • Add extended sRGB non-linear enum.

  • Revision 4, 2019-04-26 (Graeme Leese)

    • Clarify colorspace transfer function usage.

    • Refer to normative definitions in the Data Format Specification.

    • Clarify DCI-P3 and Display P3 usage.

See Also

No cross-references are available

Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Copyright (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.