Server Version#: 1.41.5.9522
Player Version#: 1.108.1.307-dd5b87aa
My setup involves a beelink n100 mini PC running ubuntu for my PMS, and the regular windows app for my client. I’ve found, after trying several HDR movies, that tonemapping doesn’t work on Direct Play unless I disable Direct Play and Direct Stream in debug settings, effectively forcing transcoding.
When I do this, tonemapping begins to work. However, I’ve noticed that forcing it this way adds a greenish tint to the tonemapped image that I can’t seem to get rid of, regardless of the mapping algorithm I’m using.
I’ve compared this tint to the tonemapped image if I use PlexMod4Kodi instead, and I don’t think tint is supposed to be there.
It’s worth noting that, after talking with a former Plex developer in the Discord, we figured out that Plex is detecting the monitors I’ve tried Direct Playing with as HDR-compatible. I’ve tried my Thinkpad laptop and an LG C3, which can both do HDR, but I’ve disabled them in Windows 11’s settings. I’ve no idea how to force Plex to recognize them as SDR monitors.
Tonemapping requires the transcoder. If you disable the transcoder by forcing DirectPlay then your player gets the file AS-IS without any video processing being performed.
Sorry, it’s been a long day and I didn’t reread what I posted.
All I really know is that I have direct play and direct stream on under debug settings by default, and tonemapping only works if I uncheck both of those options. That would be great, if not for the fact tonemapping this way adds that green tint I mentioned, for whatever reason. In PM4K, I’m able to Direct Play and tonemap, and I don’t encounter any of that tint there.
I also have a Beelink S12 Pro (N100 CPU) running Ubuntu
It works perfectly at transcoding & tonemapping
I had to google PM4K. Kodi is a Thick player. As such, it will tonemap locally as part of the playback. (it’s looking at the source and looking at the display capabilites – doing whatever needs to be done)
What happens when you open the browser and play using Plex/web ?
Do you get transcoding & tonemapping?
I think I need to see your server’s DEBUG (DEBUG logging enabled, VERBOSE disabled) which captures:
The start of a Kodi playback
The start of a Plex/web playback
The best way to do this:
Make certain the logging is set (and SAVEd if changed)
Play 20 seconds of each player & stop
Download the logs ZIP file from PMS
Attach it here so I can follow along with what happened
sorry for replying late, I’ve been busy planning for a trip. I’ll go ahead and try to get the debug files shortly. for the Plex windows app, should I turn off Direct Play/Stream when I do the tests?
plex and kodi tonemapping tests.zip (442.6 KB)
Here’s the logs. Please note that one of the txt plex client logs is with direct play/stream on, while the other is with them off. Also, Kodi is Direct Playing while also still tonemapping, which I’m pretty sure Plex Windows Client should be able to do but isn’t.
The ONE thing that anyone who has AppleTV or Nvidia Shield Pro can do
– Set the Display OUTPUT mode to SDR (tonemapped)
PMS will send HDR. The Plex app will play HDR but tell the Shield to tonemap. The Shield will tonemap internally in hardware. The output is a SDR image on a HDR screen.
Bringing this back to Kodi.
Can you tell Kodi what the display output mode is? HDR or SDR ?
– If so, set it to SDR
If you can’t then your choices change
– Use a different player
– Stop using HDR content.
Thank you for reaching back out. I’ve actually begun travelling in Japan while trying to use Plex, but I should probably clarify a couple of things.
HDR images work properly on HDR-enabled displays, and tonemapped images seem to work correctly on my Shield, too (without the tint). I see the tint whenever I try tonemapping on my windows 11 laptop and desktop, though.
As for Kodi, I honestly didn’t find the GUI for it useful on Windows OS. I’ve started trying Jellyfin in its place and it tonemaps just fine after some tuning (both on windows and my shield), but that also requires Tailscale, which I haven’t figured out how to optimize for remote access yet.