Package org.lwjgl.vulkan
Class EXTHdrMetadata
java.lang.Object
org.lwjgl.vulkan.EXTHdrMetadata
This extension defines two new structures and a function to assign SMPTE (the Society of Motion Picture and Television Engineers) 2086 metadata and CTA (Consumer Technology Association) 861.3 metadata to a swapchain. The metadata includes the color primaries, white point, and luminance range of the reference monitor, which all together define the color volume containing all the possible colors the reference monitor can produce. The reference monitor is the display where creative work is done and creative intent is established. To preserve such creative intent as much as possible and achieve consistent color reproduction on different viewing displays, it is useful for the display pipeline to know the color volume of the original reference monitor where content was created or tuned. This avoids performing unnecessary mapping of colors that are not displayable on the original reference monitor. The metadata also includes the
maxContentLightLevel and maxFrameAverageLightLevel as defined by CTA 861.3.
While the intended purpose of the metadata is to assist in the transformation between different color volumes of different displays and help achieve better color reproduction, it is not in the scope of this extension to define how exactly the metadata should be used in such a process. It is up to the implementation to determine how to make use of the metadata.
- Name String
VK_EXT_hdr_metadata- Extension Type
- Device extension
- Registered Extension Number
- 106
- Revision
- 2
- Extension and Version Dependencies
VK_KHR_swapchain- Contact
- Courtney Goeltzenleuchter courtney-g
Other Extension Metadata
- Last Modified Date
- 2018-12-19
- IP Status
- No known IP claims.
- Contributors
- Courtney Goeltzenleuchter, Google
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidnvkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, int swapchainCount, long pSwapchains, long pMetadata) Unsafe version of:SetHdrMetadataEXTstatic voidvkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, long[] pSwapchains, VkHdrMetadataEXT.Buffer pMetadata) Array version of:SetHdrMetadataEXTstatic voidvkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, LongBuffer pSwapchains, VkHdrMetadataEXT.Buffer pMetadata) Set HDR metadata.
-
Field Details
-
VK_EXT_HDR_METADATA_SPEC_VERSION
public static final int VK_EXT_HDR_METADATA_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_EXT_HDR_METADATA_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_HDR_METADATA_EXT
public static final int VK_STRUCTURE_TYPE_HDR_METADATA_EXTExtendsVkStructureType.- See Also:
-
-
Method Details
-
nvkSetHdrMetadataEXT
public static void nvkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, int swapchainCount, long pSwapchains, long pMetadata) Unsafe version of:SetHdrMetadataEXT- Parameters:
swapchainCount- the number of swapchains included inpSwapchains.
-
vkSetHdrMetadataEXT
public static void vkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, LongBuffer pSwapchains, VkHdrMetadataEXT.Buffer pMetadata) Set HDR metadata.C Specification
To provide HDR metadata to an implementation, call:
void vkSetHdrMetadataEXT( VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata);Description
The metadata will be applied to the specified
VkSwapchainKHRobjects at the nextvkQueuePresentKHRcall using thatVkSwapchainKHRobject. The metadata will persist until a subsequentvkSetHdrMetadataEXTchanges it.Valid Usage (Implicit)
devicemust be a validVkDevicehandlepSwapchainsmust be a valid pointer to an array ofswapchainCountvalidVkSwapchainKHRhandlespMetadatamust be a valid pointer to an array ofswapchainCountvalidVkHdrMetadataEXTstructuresswapchainCountmust be greater than 0- Each element of
pSwapchainsmust have been created, allocated, or retrieved fromdevice
See Also
- Parameters:
device- the logical device where the swapchain(s) were created.pSwapchains- a pointer to an array ofswapchainCountVkSwapchainKHRhandles.pMetadata- a pointer to an array ofswapchainCountVkHdrMetadataEXTstructures.
-
vkSetHdrMetadataEXT
public static void vkSetHdrMetadataEXT(org.lwjgl.vulkan.VkDevice device, long[] pSwapchains, VkHdrMetadataEXT.Buffer pMetadata) Array version of:SetHdrMetadataEXT
-