You grab a 4K HDR movie, hit play on your 1080p TV, and the image looks terrible — washed-out faces, blown highlights, flat contrast. That milky, desaturated look is what happens when HDR content plays on an SDR display without proper tone mapping. The good news: Plex can fix this automatically. The bad news: it needs the right hardware and settings to do it well.
What Is Tone Mapping?
HDR video uses a wider color range (BT.2020) and much higher brightness (up to 10,000 nits) compared to SDR (BT.709, ~100 nits). Tone mapping compresses that wider range into SDR space while preserving as much of the visual intent as possible. Three things happen simultaneously:
- Luminance compression: Bright highlights get pulled down into SDR range. A sunset that peaks at 4,000 nits in HDR needs to map to ~100 nits while still looking like a sunset, not a white blob.
- Color gamut mapping: BT.2020 can represent colors that BT.709 literally cannot display. Those out-of-gamut colors get clipped or remapped to the nearest displayable color.
- Transfer function conversion: HDR uses PQ (Perceptual Quantizer) or HLG curves. SDR uses gamma. The math is fundamentally different and directly affects perceived contrast.
When any step fails, you see the symptoms: washed-out colors (bad luminance mapping), oversaturated patches (bad gamut clipping), or flat contrast (wrong transfer function).
Enabling Tone Mapping in Plex
- Go to Settings → Transcoder
- Check “Use hardware acceleration when available”
- Check “Use hardware-accelerated video encoding”
- Check “Enable HDR tone mapping” — this is OFF by default on fresh installs
- Set transcoder quality to “Prefer higher quality encoding” for the best tone-mapped output
Requires Plex Pass. Without it, even if you have a capable GPU, Plex falls back to software-only processing. Plex Pass is one of the strongest reasons to subscribe if you have HDR content and non-HDR clients.
Hardware Requirements
NVIDIA GPUs
Turing generation or newer (RTX 2000, GTX 1650 Super, RTX 3000, RTX 4000 series). NVENC handles the full pipeline: 10-bit HEVC decode → tone mapping via CUDA → 8-bit H.264 encode. An RTX 3060 handles 3-4 simultaneous 4K HDR-to-SDR transcodes. Even a GTX 1650 Super manages 1-2.
Intel Quick Sync
10th generation (Ice Lake/Comet Lake) or newer. An N100 mini PC handles 2-3 HDR tone mapping transcodes simultaneously. 12th/13th gen Intel with the improved media engine is even better. Intel Arc GPUs (A380, A580) are the best budget dedicated option with native AV1 decode.
AMD GPUs
AMD hardware transcoding support in Plex has improved but tone mapping is still hit-or-miss depending on the specific GPU and driver version. Check Plex forums for your card before relying on it.
CPU-only (software)
Works on any server but is extremely slow. A 4K HDR tone-mapped transcode on CPU alone requires 8-12 modern cores running at 100%. Expect one transcode at most, and the quality is generally worse than hardware tone mapping.
HDR Formats: How Plex Handles Each
HDR10
Static metadata — one brightness/color profile for the entire movie. This is the most common format and best supported by Plex. The static metadata tells the tone mapper the content’s peak brightness upfront, so the mapping is predictable and consistent.
HDR10+
Dynamic metadata with per-scene brightness adjustments. Plex currently ignores the dynamic metadata and falls back to the static HDR10 base layer. Results are good but not optimal — you lose scene-by-scene adjustments that HDR10+ provides.
Dolby Vision
The trickiest format. DV comes in profiles:
- Profile 7/8 (most common in disc rips): Dual-layer with an HDR10 base. Plex tone-maps the HDR10 layer, which works well.
- Profile 5 (streaming-only DV): Single layer, no HDR10 fallback. Plex may produce incorrect colors because there’s no HDR10 metadata to work from. If you have DV Profile 5 files and non-DV clients, remux them with
dovi_toolto add an HDR10 compatibility layer.
HLG (Hybrid Log-Gamma)
Common in broadcast content. Inherently backward-compatible with SDR — the gamma curve degrades gracefully without explicit tone mapping. Usually looks fine without special configuration.
Still Washed Out After Enabling?
If you’ve enabled tone mapping and colors are still wrong, check these:
- Verify the GPU is actually being used. Check the Plex dashboard during playback — it should show “(hw)” next to the transcode. If it says “Transcode” without “(hw),” your GPU isn’t being used. Common cause: GPU drivers not installed, or Docker container missing the
--runtime=nvidiaflag. - Check the file’s HDR format. Use MediaInfo to check. If it’s DV Profile 5, that’s likely the problem (see above).
- Client-side HDR settings. Some clients (Apple TV, Shield) have their own HDR settings. If the client is set to output SDR but the TV supports HDR, you may get double tone mapping — Plex tone maps to SDR, then the TV tries to “enhance” it back to HDR. Set the client to match your display’s actual capabilities.
- Transcoder temp directory on a slow disk. Tone mapping + transcode generates large temp files. If the transcoder temp dir is on a spinning HDD, the pipeline can bottleneck and produce artifacts.
When to Keep Separate Copies
The best tone mapping is no tone mapping. If you have the disk space, keeping both versions avoids the problem entirely:
- 4K HDR version for clients that support HDR (Shield, Apple TV 4K, modern smart TVs). Direct play, no transcoding, no quality loss.
- 1080p SDR version for everything else (phones, tablets, laptops, older TVs). Direct play again — no transcoding needed because the file is already in the right format.
Plex’s “Other Versions” feature stores both under the same library entry. The right version is served automatically based on client capabilities.
Performance Impact
Tone mapping is the most expensive transcoding operation Plex performs. It’s doing 4K decode + color space math + luminance remapping + re-encode simultaneously. Even with a GPU, expect each tone-mapped transcode to use significant GPU resources:
- RTX 3060: 3-4 simultaneous 4K HDR→SDR transcodes
- Intel N100: 2-3 simultaneous
- GTX 1650 Super: 1-2 simultaneous
- CPU-only: 1 at most, and your server will be unusable for anything else
If you regularly need more capacity, set per-user bandwidth limits so not everyone can request 4K streams simultaneously, or maintain those dual 4K HDR + 1080p SDR copies to avoid transcoding altogether.
HDR looking washed out?
We diagnose and fix tone mapping, GPU transcoding, and color issues in one session. Flat rate, guaranteed.
Book a Fix →