HDR Screenshot Recovery

Rescue washed-out or blown Windows HDR screenshots to SDR and HDR

Drop your HDR screenshot here

or click to choose · PNG · JPG · AVIF · WebP · JXR

You can paste a captured screenshot directly with Ctrl+V

About HDR Screenshot Recovery

Take a screenshot on Windows with HDR turned on and it often comes out broken in one of two ways: the whole image looks as if a gray veil was laid over it, or the bright areas turn into flat white blobs. This tool reads the file, diagnoses which kind of damage it has, and applies a matching preset to produce an SDR image that looks right everywhere, plus an optional corrected HDR PNG.

How much comes back depends on what the file still contains. A .jxr from Xbox Game Bar, or an HDR PNG or AVIF, still holds real HDR values, so highlights can be recovered. An 8-bit PNG that was already clipped at 255 has lost that detail for good, and no tool can invent it back.

Why HDR desktops produce washed-out screenshots

With HDR on, Windows composes the desktop in scRGB, a linear floating-point space in which 1.0 corresponds to 80 nits and brighter highlights are stored as values above 1, such as 2.0 or 6.0. Ordinary SDR apps are placed inside that space according to the SDR content brightness slider in Settings.

Trouble starts when a capture path converts that buffer to 8-bit sRGB without proper tone mapping. Squeeze the whole range in linearly and blacks lift toward gray while saturation drains away: the washed-out look. Clip everything above 1.0 instead and the highlights blow out to white. Which symptom you get depends on the capture tool, the GPU driver and the Windows build, and the same complaint keeps reappearing on Microsoft's Q&A forums.

How the tool tells the damage apart

It first identifies the container from its magic bytes (JXR, PNG, JPEG, AVIF, WebP) rather than trusting the extension. A PNG with a cICP chunk is treated as HDR, and its PQ curve is decoded back to absolute luminance. Every input is converted to one internal form, linear Rec. 2020 with 1.0 meaning diffuse white, before analysis.

Four measurements drive the diagnosis: headroom (how many times brighter than diffuse white the brightest pixel is), the fraction of pixels with at least one clipped channel, the fraction with all three clipped, and mean saturation. Headroom above 1.05 means genuine HDR data and selects the tone-mapping preset. More than 2% fully white pixels, or more than 8% with a clipped channel, selects the blown-highlights preset. Washed-out is diagnosed only when mean saturation is below 0.16 and the blacks are lifted or the whites compressed. Low saturation is required because a perfectly normal photo full of dark furniture can also have lifted-looking blacks.

Tone mapping: folding a wide range into 0 to 1

HDR input is compressed with one of three curves: extended Reinhard, Hable's filmic curve (from Uncharted 2), or Narkowicz's ACES approximation. All of them leave shadows nearly untouched and give less and less output for each extra unit of input, reaching exactly 1.0 at the tone-map white point W. Presets set W to 0.9 times the measured headroom, clamped between 2.5 and 12.

The curve is applied to luminance only, not to each channel separately, and R, G and B are scaled down together by the same ratio. A very bright, saturated color such as a neon orange sign therefore keeps its hue instead of drifting toward yellow. If one channel still exceeds the display range after scaling, the pixel is scaled down as a whole, keeping hue and saturation at the cost of a little brightness. Highlight rolloff moves very bright areas toward white, so if highlight colors look washed out, lower the rolloff or raise the tone-map white.

Exporting an HDR PNG

The HDR output is a 16-bit PNG carrying a cICP chunk with the values 9, 16, 0, 1, meaning Rec. 2020 primaries, PQ transfer and full range. Display white (1.0) is placed at 203 nits, the reference white recommended in ITU-R BT.2408, and values are capped at the peak you choose (400 nits by default). Chrome and Edge display these files as HDR; viewers that ignore cICP show them as SDR or with wrong colors. For chat apps, social media or blogs, the SDR output is the safer choice.

Avoiding the problem next time

Win+Alt+PrtScn in Xbox Game Bar saves both a .jxr with the HDR data and a tone-mapped PNG, so you always have the raw version to fall back on. If you only need a document or web page captured, temporarily switching HDR off before capturing avoids the conversion entirely. For game screenshots, keep the .jxr: it is the only format here that lets highlights come back.

Worked examples

PQ code values versus real brightness

Input
Encode 203 nits and 1,000 nits with PQ
Output
0.58 and 0.75

PQ (SMPTE ST 2084) spreads 0 to 10,000 nits over 0 to 1. Reference white at 203 nits sits at 58% of the signal, and even 1,000 nits is only 75%, leaving the top quarter for 1,000 to 10,000 nits.

Tone-map white from headroom

Input
Game capture peaking at 1,000 nits, reference white 203 nits
Output
Headroom 4.93, tone-map white 4.43

1000 / 203 = 4.93. The preset multiplies by 0.9, so the brightest tenth of the range is gathered into white.

Where Reinhard puts diffuse white

Input
W = 4, inputs 1.0, 2.0, 4.0
Output
0.53, 0.75, 1.00 (linear)

Extended Reinhard is x(1 + x/W²)/(1 + x). Diffuse white landing at 0.53 linear is about 193/255 in sRGB, so white paper turns light gray; that is why presets add some contrast. Hable gives about 0.54 under the same settings.

How to use it

  1. Drop the screenshot file or paste it with Ctrl+V.
  2. Check the diagnosis and suggested preset, and compare with the before/after slider.
  3. Adjust exposure, saturation or black point if needed, then save as SDR or HDR PNG.

Frequently asked questions

Which capture gives the best recovery?

Xbox Game Bar's .jxr. It keeps values above SDR white, so highlights can be tone-mapped instead of being guessed.

Text in a blown-out area is still unreadable.

In an 8-bit file those pixels were stored as 255; the original values are gone. The tool smooths the white patch so it looks natural, but it cannot create missing detail.

I loaded a normal photo and almost nothing changed.

With no damage signals the tool reports a clean image and leaves levels alone, to avoid pushing a healthy picture into oversaturated colors.

The HDR PNG looks dark or odd in another program.

That viewer does not read the cICP tag. Use the SDR output unless you specifically need HDR display.

Sources

Last reviewed:

Privacy and how data is handled