If Plex Web Client is playing a movie on a Chromium-based browser on an HDR-capable display configured with HDR Disabled on Windows or macOS, then Plex is Direct Streaming the HDR version of a movie, if both an HDR and SDR version exist, resulting in an image with mismatched Dynamic Range (crushed shadows and washed-out highlights) and Color Space (oversaturated):
Conversely, if Plex Web Client is playing a movie on a Chromium-based browser on an SDR-only display on Windows or macOS, then Plex is Direct Streaming the SDR version of a movie, if both an HDR and SDR version exist, resulting in a correct image that looks like this with the correct Color Space and Dynamic Range:
Here’s another example of what you get when viewing an HDR version that’s Direct Streaming to an HDR-capable display configured with HDR Disabled (Display is effectively SDR) that demonstrates the blown-out highlights of a dynamic range mismatch:
Here’s another example of what you get when viewing an HDR version that’s Direct Streaming to an SDR-only display that correctly demonstrates detail in the highlights:
On the other hand, Chromium can communicate Dynamic Range capabilities between the OS and the video player as can be seen by playing an HDR YouTube video under the same circumstances described above. YouTube will play an SDR version in both circumstances described above and will only show the HDR version on an HDR-capable display configured with HDR Enabled. Here’s an example video on YouTube that can demonstrate this:
My ask would be for the Plex Web client to respect the current Dynamic Range capabilities of a display and attempt the following in order:
- Attempt to Direct Play/Stream an SDR version (Plex will currently only do this if the Display is SDR-only). An SDR-native version should always be preferred over transcoding as Dynamic Range and Color Accuracy will generally have a more significant impact on perceived quality than higher bitrate. A Direct Stream version should only be preferred over Direct Play if it is of higher quality and if the client bandwidth restriction is set to Maximum, but if there is a client bandwidth restriction in place then the Direct Play version should be preferred.
- Transcode the best available SDR version to a compatible SDR format if necessary.
- Transcode the HDR version to SDR if an SDR version isn’t present.
- Only Direct Stream the HDR version if PMS’ Transcoding is disabled.
Long story short, I always think that Direct Streaming/Playing an HDR version to an SDR display should be an absolute last resort.
I sincerely hope there’s interest in this on Plex’s end because 4K HDR is extremely common, but unfortunate situations like this can result in a video that I’d personally consider bad-enough to be unwatchable; I’d rather look at a 4Mbps 720p SDR-native stream in the correct Dynamic Range and Color space than a 4K HDR stream that’s being crunched into an SDR color space. YouTube’s handling of HDR is a great example of how it can/should be done.
Thank you!
P.S. I tested this on Safari and it has the identical issue even down to YouTube correctly respecting the dynamic range of the display.
Server Version#: 1.31.1.6733
Player Version#: 4.101.1



