1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-17 12:31:25 +00:00
mpv/DOCS/man
Niklas Haas e3d93fde2f vo_gpu: port HDR tone mapping algorithm from libplacebo
The current peak detection algorithm was very bugged (which contributed
to the excessive cross-frame flicker without long normalization) and
also didn't take into account the frame average brightness level.

The new algorithm both takes into account frame average brightness (in
addition to peak brightness), and also computes the values in a more
stable/correct way. (The old path was basically undefined behavior)

In addition to improving the algorithm, we also switch to hable tone
mapping by default, and try to enable peak computation automatically
whever possible (compute shaders + SSBOs supported). We also make the
desaturation milder, after extensive testing during libplacebo
development.

I also had to compensate a bit for the representational differences
between mpv and libplacebo (libplacebo treats 1.0 as the reference peak,
but mpv treats it as the nominal peak), but it shouldn't have caused any
problems.

This is still not quite the same as libplacebo, since libplacebo also
allows tagging the desired scene average brightness on the output, and
it also supports reading the scene average brightness from static
metadata (MaxFALL) where available. But those changes are a bit more
involved. It's possible we could also read this from metadata in the
future, but we have problems communicating with AVFrames as it is and I
don't want to touch the mpv colorimetry structs for the time being.
2018-02-05 23:11:18 -08:00
..
af.rst manpage: clarify some --vf options 2018-01-31 11:12:08 +01:00
ao.rst ao_null: add --ao-null-format option for debugging 2018-01-30 03:10:27 -08:00
changes.rst manpage: mention the client API/interface change logs 2016-09-02 09:48:35 +02:00
encode.rst encode: implement --oset-metadata, and --oremove-metadata 2017-12-26 03:33:19 -07:00
input.rst codecs: remove unused family field 2018-02-01 10:21:55 +01:00
ipc.rst manpage: document tricky issue with IPC observe_property command 2017-05-16 12:20:39 +02:00
javascript.rst js: implement mp.msg.trace() 2017-12-16 02:25:24 -08:00
libmpv.rst manpage: define stricter rules for C plugin return values 2017-01-14 17:41:04 +01:00
lua.rst js: implement mp.msg.trace() 2017-12-16 02:25:24 -08:00
mpv.rst options: add string list -toggle action 2018-01-25 20:18:32 -08:00
options.rst vo_gpu: port HDR tone mapping algorithm from libplacebo 2018-02-05 23:11:18 -08:00
osc.rst osc: add seekbarkeyframes as a user option 2018-01-03 15:35:39 +00:00
stats.rst stats: clarify documentation 2017-10-13 00:28:41 +02:00
vf.rst manpage: clarify some --vf options 2018-01-31 11:12:08 +01:00
vo.rst manpage: remove stale vo_wayland entry 2018-01-13 03:26:45 -08:00