Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- newtype SamplerYcbcrModelConversion where
- SamplerYcbcrModelConversion Int32
- pattern SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY :: SamplerYcbcrModelConversion
- pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY :: SamplerYcbcrModelConversion
- pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 :: SamplerYcbcrModelConversion
- pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 :: SamplerYcbcrModelConversion
- pattern SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 :: SamplerYcbcrModelConversion
Documentation
newtype SamplerYcbcrModelConversion Source #
VkSamplerYcbcrModelConversion - Color model component of a color space
Description
SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY
specifies that the input values to the conversion are unmodified.
SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY
specifies no model conversion but the inputs are range expanded as for Y′CBCR.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709
specifies the color model conversion from Y′CBCR to R′G′B′ defined in BT.709 and described in the “BT.709 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601
specifies the color model conversion from Y′CBCR to R′G′B′ defined in BT.601 and described in the “BT.601 Y’CBCR conversion” section of the Khronos Data Format Specification.SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020
specifies the color model conversion from Y′CBCR to R′G′B′ defined in BT.2020 and described in the “BT.2020 Y’CBCR conversion” section of the Khronos Data Format Specification.
In the VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_*
color models, for the
input to the sampler Y′CBCR range expansion and model conversion:
- the Y (Y′ luma) channel corresponds to the G channel of an RGB image.
- the CB (CB or “U” blue color difference) channel corresponds to the B channel of an RGB image.
- the CR (CR or “V” red color difference) channel corresponds to the R channel of an RGB image.
- the alpha channel, if present, is not modified by color model conversion.
These rules reflect the mapping of channels after the channel swizzle
operation (controlled by
SamplerYcbcrConversionCreateInfo
::components
).
Note
For example, an “YUVA” 32-bit format comprising four 8-bit channels can
be implemented as FORMAT_R8G8B8A8_UNORM
with a component mapping:
components.a
=COMPONENT_SWIZZLE_IDENTITY
components.r
=COMPONENT_SWIZZLE_B
components.g
=COMPONENT_SWIZZLE_R
components.b
=COMPONENT_SWIZZLE_G
See Also
AndroidHardwareBufferFormatPropertiesANDROID
,
SamplerYcbcrConversionCreateInfo