sabaatworld / HyperionScreenCap

Screen capture program for Hyperion ambilight. Updated to support DirectX 11, multiple displays and multiple Hyperion servers.
MIT License
120 stars 20 forks source link

Add HDR support to DX11 Capture #61

Open ktaeleman opened 1 year ago

ktaeleman commented 1 year ago

Add R16G16B16A16_Float support to the DX11Capture, allowing capturing of Windows HDR desktops (and games). This change switches the use of DuplicateOutput to DuplicateOutput1, which enables capturing of non B8G8R8A8 buffer formats.

This also fixes the washed out and incorrect colors that were being passed to Hyperion when using a HDR format. A good example of this is Orange, which always resulted in Yellow.

Notes:

Screenshot of preview in Hyperion: image

pho084 commented 1 year ago

woa nice! i have since switched to piccap (LG TV webOS capture) but will check this out! thank you

tihoangyeudau commented 1 year ago

I got the issue "Texture format R10G10B10A2_UNorm is not supported" when using Radeon rx 570 graphic card with your commit (nvidia and intel are ok with yours). Please fix it!

tihoangyeudau commented 1 year ago

@ktaeleman Is it necessary to add something like this?

// Duplicate the output
            Format[] DesktopFormats = { Format.R16G16B16A16_Float, Format.B8G8R8A8_UNorm, Format.R10G10B10A2_UNorm };
r3vEngIT commented 1 year ago

just wanted to say that this is working great so far with the HD108 strip. thank you.