Ok, so I've posted a bunch of different configs and results, but I'm sure that some of you have gotten a little confused, and are unsure of what you should be doing. So this thread will be a bit more structured in what to use.
All results here, are from using a test build of mpv (attached) that has not yet been merged to master. The present release/Git, doesn't have these developments. For those wanting to use this, I am assuming that you already know how, and are only looking for a config to put in your mpv.conf.
There are far too many possible configurations to show them all, here. So I'm going to focus on the elements that I think are most important.
- tone-mapping -----------------> This is the algorithm that decides how the colors are applied
- tone-mapping-desaturate ---> Decides how much color to remove
- hdr-compute-peak ------------> Calculates the brightest point of the scene
- target-peak --------------------> You choose the value of the brightest point (these two can work together)
- target-prim --------------------> Chooses the colorspace that you want to use
If you were to use the default values in your mpv.conf, it would look like this;
hdr-compute-peak=auto tone-mapping=hable target-peak=100 tone-mapping-desaturate=0.5 target-prim=bt.709
This will generally give you a very good picture. If you're using an SDR display with basic color adjustments, it's probably best that you don't change anything. The defaults are designed to work with that kind of display.
If you have an HDR display and Windows is in HDR10 at all times, below may be more useful to you. Something I should also mention is that calibration for HDR passthrough may not work with mpv tone mapping. My display comes with a calibrated setting. If I use that and play HDR with madVR and pass the metadata to the display, the colors are correct. But if I use the same settings for mpv, the colors are incorrect. mpv tone-mapping is targeted at SDR displays. So you may want to check that. I calibrated my display to the Windows desktop. If Windows' colors are correct, so will mpv.
First, you'll definitely want to use wide color gamut, to have more accurate colors.
Test playing an HDR movie with that, so you can decide what (if any) adjustments you want to make.
Here are some screenshots with the defaults, but in bt.2020
Lost in Space
I'm choosing these movies because they have extremes in saturation, light and darkness. As you can see, the results appear very good.
Now I'll show you what using reinhard instead of hable, will look like. Reinhard stays more faithful to the brightness. You lose more detail, in the brightness.
hdr-compute-peak=yes tone-mapping=reinhard target-peak=100 tone-mapping-desaturate=0.5 target-prim=bt.2020
Chess (losing more detail in the brightness)
Lost in Space (more detail due to brightening)
Here's where we go down the rabbit hole a little bit, and I show you how to improve the detail. This is where we start adjusting the desaturation. Using the default config, but increasing desaturation to 2.0. The differences here, are subtle. The Chess video shows it, best.
hdr-compute-peak=yes tone-mapping=hable target-peak=100 tone-mapping-desaturate=2.0 target-prim=bt.2020
Chess (notice more shades in the neck piece)
No perceptible change in Interstellar or Lost in Space.
Let's now use reinhard with that.
hdr-compute-peak=yes tone-mapping=reinhard target-peak=100 tone-mapping-desaturate=2.0 target-prim=bt.2020
Chess (Too bright but has more detail than with default desaturation)
Interstellar (also too bright)
Lost in Space (You can see more detail)
So we lost detail in bright scenes, but gained it in the dark scenes. I think we want to balance that, right? So here's where we introduce changing the target-peak. I find that 250 works on my display. You'll want to experiment a little with that value. Higher=darker, lower=brighter. 100 is the default.
hdr-compute-peak=yes tone-mapping=reinhard target-peak=250 tone-mapping-desaturate=2.0 target-prim=bt.2020
Chess (retaining the brightness and detail)
Lost in Space
So now we're deep in the rabbit hole. The differences are very subtle and you may not care about them. I have increased the desaturation in my config, to 4.0. This gives more detail in some scenes, like the Chess lady.
hdr-compute-peak=yes tone-mapping=reinhard target-peak=250 tone-mapping-desaturate=4.0 target-prim=bt.2020
Now that you're using target-peak, you'll probably want to keep using peak detection. This will keep dark scenes bright enough to see more details.
Lost in Space (hdr-compute-peak=yes)
Lost in Space (hdr-compute-peak=no)
There are many more ways to adjust the picture. I don't use mobius, as I think it's too bright, especially on an HDR display in HDR10. Your results will vary, because each display has different capabilities with different calibrations.
Edited by Doofus, 14 February 2019 - 10:38 PM.