dynamic range color gamut precision dynamic range color

  • Slides: 27
Download presentation

dynamic range color gamut + precision +

dynamic range color gamut + precision +

dynamic range

dynamic range

color gamut

color gamut

precision

precision

dynamic range color gamut precision 300 nits peak lumi. s. RGB color primaries 8

dynamic range color gamut precision 300 nits peak lumi. s. RGB color primaries 8 bits per channel

Stay tuned!

Stay tuned!

This video covers these APIs

This video covers these APIs

 Pixel format 7 6 5 4 3 2 1 0 Red Green Blue

Pixel format 7 6 5 4 3 2 1 0 Red Green Blue Alpha Colorspace RGB(0, 120, 215) = in the s. RGB colorspace

Option 1: FP 16 + sc. RGB Option 2: R 10 G 10 B

Option 1: FP 16 + sc. RGB Option 2: R 10 G 10 B 10 A 2 + HDR 10

Option 1: FP 16 + sc. RGB This is important!

Option 1: FP 16 + sc. RGB This is important!

Option 2: R 10 G 10 B 10 A 2 + HDR 10

Option 2: R 10 G 10 B 10 A 2 + HDR 10

Com. Ptr<IDXGIFactory 2> factory; // Initialized elsewhere DXGI_SWAP_CHAIN_DESC 1 swapchain. Desc = {}; swapchain.

Com. Ptr<IDXGIFactory 2> factory; // Initialized elsewhere DXGI_SWAP_CHAIN_DESC 1 swapchain. Desc = {}; swapchain. Desc. Format = DXGI_FORMAT_R 16 G 16 B 16 A 16_FLOAT; . . . // Set pixel format Com. Ptr<IDXGISwap. Chain 1> swapchain; Throw. If. Failed(factory->Create. Swap. Chain. For. Core. Window(. . . &swapchain. Desc, &swapchain)); // Create swapchain Com. Ptr<IDXGISwap. Chain 4> swapchain 4; swapchain. As(&swapchain 4); // Query. Interface swapchain 4 ->Set. Color. Space 1(DXGI_COLOR_SPACE_RGB_FULL_G 10_NONE_P 709); // Set colorspace

 Display performance: AC visual assets AC render pipeline AC display output Swap. Chain

Display performance: AC visual assets AC render pipeline AC display output Swap. Chain Alternate asset sets Power/perf optimizations Detect display capabilities Tonemapping

Com. Ptr<IDXGIFactory 1> factory; Com. Ptr<IDXGISwap. Chain> swapchain; // Initialized elsewhere if (!factory->Is. Current())

Com. Ptr<IDXGIFactory 1> factory; Com. Ptr<IDXGISwap. Chain> swapchain; // Initialized elsewhere if (!factory->Is. Current()) { Create. DXGIFactory 2(0 /* flags */, IID_PPV_ARGS(&factory)); } // Ensure DXGI factory is valid Com. Ptr<IDXGIOutput> output; swapchain->Get. Containing. Output(&output); // Get DXGI output Com. Ptr<IDXGIOutput 6> output 6; output. As(&output 6); // Query. Interface DXGI_OUTPUT_DESC 1 output. Desc; output 6 ->Get. Desc 1(&output. Desc); // Get display desc // DXGI_OUTPUT_DESC 1 contains all key display color performance values

typedef struct DXGI_OUTPUT_DESC 1 {. . . UINT Bits. Per. Color; DXGI_COLOR_SPACE_TYPE Color. Space;

typedef struct DXGI_OUTPUT_DESC 1 {. . . UINT Bits. Per. Color; DXGI_COLOR_SPACE_TYPE Color. Space; // Display colorspace FLOAT // Color gamut Red. Primary[2]; Green. Primary[2]; Blue. Primary[2]; White. Point[2]; FLOAT Min. Luminance; FLOAT Max. Full. Frame. Luminance; }; // Precision // Dynamic range

DDS BC 6 H JPEG XR Open. EXR JPEG w/ ICC profile

DDS BC 6 H JPEG XR Open. EXR JPEG w/ ICC profile

// Use Windows Imaging Component to load a JPEG XR image into Direct 2

// Use Windows Imaging Component to load a JPEG XR image into Direct 2 D Com. Ptr<ID 2 D 1 Device. Context 2> context; Com. Ptr<IWICImaging. Factory> factory; Com. Ptr<IStream> stream; // Initialized elsewhere Com. Ptr<IWICBitmap. Decoder> decoder; Com. Ptr<IWICBitmap. Frame. Decode> frame; factory->Create. Decoder. From. Stream(stream. Get(), . . . , &decoder); decoder->Get. Frame(0, &frame); // Create WIC decoder // WIC detects codec from the stream // JPEG XR has 1 frame Com. Ptr<IWICFormat. Converter> converter; factory->Create. Format. Converter(&converter); converter->Initialize(frame. Get(), GUID_WICPixel. Format 64 bpp. PRGBAHalf, . . . ); Com. Ptr<ID 2 D 1 Image. Source. From. Wic> d 2 d. Image; context->Create. Image. Source. From. Wic(converter. Get(), &d 2 d. Image); // Ensure FP 16 pixel format // Create D 2 D image source

Resources and links aka. ms/esmdsk aka. ms/nokc 3 a aka. ms/m 39 e 01

Resources and links aka. ms/esmdsk aka. ms/nokc 3 a aka. ms/m 39 e 01 aka. ms/ds 3 xd 7 aka. ms/lxde 6 g github. com/Microsoft/Win 2 D github. com/Microsoft/Direct. XTex