Skip to content
WangBin edited this page Dec 22, 2023 · 16 revisions

Tone Mapping

It's the default. You can also call Player.set(ColorSpaceBT709) to set SDR target. Supported by all renderers

scRGB and Extended Linear sRGB

On windows it's recommended and confirmed to work perfectly. D3D11/12 renderer is required. https://learn.microsoft.com/en-us/windows/win32/direct3darticles/high-dynamic-range#option-1-use-fp16-pixel-format-and-scrgb-color-space

player.set(ColorSpaceSCRGB);

// render target pixel format MUST be rgba16f

HDR10 Metadata Passthrough

For rendering Player.set(ColorSpaceUnknown) to detect display hdr capability and enabled automatically. Player.set(ColorSpaceBT2100_PQ) to force hdr metadata passthrough, SDR images will be tone mapped too.

  • Metal: perfectly supported. MetalRenderAPI.layer must be provided. example code
  • D3D11/12: displays as scRGB and HDR10
  • Vulkan:
  • OpenGL:

TODO:

  • Dolby Vision
Clone this wiki locally