diff options
author | Niklas Haas <git@haasn.xyz> | 2017-06-09 09:16:06 +0200 |
---|---|---|
committer | Ricardo Constantino <wiiaboo@gmail.com> | 2017-06-09 11:27:28 +0100 |
commit | d8a3b10f45eb10fb34ce9da3a9a76e3bd8644e3d (patch) | |
tree | 80186e11d21707072751d95e055f44da7a36f159 /video/out/opengl/video.h | |
parent | 30cd963b25520089f56417eb2f946c98afeef073 (diff) | |
download | mpv-d8a3b10f45eb10fb34ce9da3a9a76e3bd8644e3d.tar.bz2 mpv-d8a3b10f45eb10fb34ce9da3a9a76e3bd8644e3d.tar.xz |
vo_opengl: add new HDR tone mapping algorithm
I call it `mobius` because apparently the form f(x) = (cx+a)/(dx+b) is
called a Möbius transform, which is the algorithm this is based on. In
the extremes it becomes `reinhard` (param=0.0 and `clip` (param=1.0),
smoothly transitioning between the two depending on the parameter.
This is a useful tone mapping algorithm since the tunable mobius
transform allows the user to decide the trade-off between color accuracy
and detail preservation on a continuous scale. The default of 0.3 is
already far more accurate than `reinhard` while also being reasonably
good at preserving highlights, without suffering from the overall
brightness drop and color distortion of `hable`.
For these reasons, make this the new default. Also expand and improve
the documentation for these tone mapping functions.
Diffstat (limited to 'video/out/opengl/video.h')
-rw-r--r-- | video/out/opengl/video.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/video/out/opengl/video.h b/video/out/opengl/video.h index 236ab067c4..3b6533e0ef 100644 --- a/video/out/opengl/video.h +++ b/video/out/opengl/video.h @@ -91,6 +91,7 @@ enum blend_subs_mode { enum tone_mapping { TONE_MAPPING_CLIP, + TONE_MAPPING_MOBIUS, TONE_MAPPING_REINHARD, TONE_MAPPING_HABLE, TONE_MAPPING_GAMMA, |