| // Copyright 2017-2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_KHR_sampler_ycbcr_conversion.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2017-08-11 |
| *IP Status*:: |
| No known IP claims. |
| *Interactions and External Dependencies*:: |
| - Promoted to Vulkan 1.1 Core |
| *Contributors*:: |
| - Andrew Garrard, Samsung Electronics |
| - Tobias Hector, Imagination Technologies |
| - James Jones, NVIDIA |
| - Daniel Koch, NVIDIA |
| - Daniel Rakos, AMD |
| - Romain Guy, Google |
| - Jesse Hall, Google |
| - Tom Cooksey, ARM Ltd |
| - Jeff Leger, Qualcomm Technologies, Inc |
| - Jan-Harald Fredriksen, ARM Ltd |
| - Jan Outters, Samsung Electronics |
| - Alon Or-bach, Samsung Electronics |
| - Michael Worcester, Imagination Technologies |
| - Jeff Bolz, NVIDIA |
| - Tony Zlatinski, NVIDIA |
| - Matthew Netsch, Qualcomm Technologies, Inc |
| |
| === Description |
| |
| The use of {YCbCr} sampler conversion is an area in 3D graphics not used by |
| most Vulkan developers. |
| It is mainly used for processing inputs from video decoders and cameras. |
| The use of the extension assumes basic knowledge of {YCbCr} concepts. |
| |
| This extension provides the ability to perform specified color space |
| conversions during texture sampling operations for the {YCbCr} color space |
| natively. |
| It also adds a selection of multi-planar formats, image aspect plane, and |
| the ability to bind memory to the planes of an image collectively or |
| separately. |
| |
| === Promotion to Vulkan 1.1 |
| |
| All functionality in this extension is included in core Vulkan 1.1, with the |
| KHR suffix omitted. |
| However, if Vulkan 1.1 is supported and this extension is not, the |
| code:samplerYcbcrConversion capability is optional. |
| The original type, enum and command names are still available as aliases of |
| the core functionality. |
| |
| include::{generated}/interfaces/VK_KHR_sampler_ycbcr_conversion.txt[] |
| |
| === Version History |
| |
| * Revision 1, 2017-01-24 (Andrew Garrard) |
| - Initial draft |
| * Revision 2, 2017-01-25 (Andrew Garrard) |
| - After initial feedback |
| * Revision 3, 2017-01-27 (Andrew Garrard) |
| - Higher bit depth formats, renaming, swizzle |
| * Revision 4, 2017-02-22 (Andrew Garrard) |
| - Added query function, formats as RGB, clarifications |
| * Revision 5, 2017-04-?? (Andrew Garrard) |
| - Simplified query and removed output conversions |
| * Revision 6, 2017-04-24 (Andrew Garrard) |
| - Tidying, incorporated new image query, restored transfer functions |
| * Revision 7, 2017-04-25 (Andrew Garrard) |
| - Added cosited option/midpoint requirement for formats, |
| "`bypassConversion`" |
| * Revision 8, 2017-04-25 (Andrew Garrard) |
| - Simplified further |
| * Revision 9, 2017-04-27 (Andrew Garrard) |
| - Disjoint no more |
| * Revision 10, 2017-04-28 (Andrew Garrard) |
| - Restored disjoint |
| * Revision 11, 2017-04-29 (Andrew Garrard) |
| - Now Ycbcr conversion, and KHR |
| * Revision 12, 2017-06-06 (Andrew Garrard) |
| - Added conversion to image view creation |
| * Revision 13, 2017-07-13 (Andrew Garrard) |
| - Allowed cosited-only chroma samples for formats |
| * Revision 14, 2017-08-11 (Andrew Garrard) |
| - Reflected quantization changes in BT.2100-1 |