Skip to content
Snippets Groups Projects
Commit 0cf787c4 authored by Niklas Haas's avatar Niklas Haas
Browse files

shaders/icc: rework ICC profile black point handling

The current ICC profile handling had a number of limitations:
1. Parts of the 3DLUT range were wasted in unrepresentable sub-blacks.
2. V2 profiles with black points not matching the V4 perceptual black
   target completely broke when using perceptual intent, causing
   black distortions.
3. We (intentionally) did not do any black point compensation.
4. Our approximation profiles were a poor fit for BT.1886-style
   technical gamma functions.

Improve the status quo by making two important changes:
1. Tune the approximation profile to use a BT.1886-style technical gamma
   curve tuned to the exact measured black point of the display.
2. Enable black point compensation

This should allow owners of broken colorimetric V2 profiles to rely on
perceptual mapping tables with black point compensation instead,

Closes: videolan/libplacebo#210
See-Also: https://github.com/mpv-player/mpv/issues/10442
See-Also: https://github.com/mm2/Little-CMS/issues/328
parent 5e0456bd
No related branches found
No related tags found
1 merge request!272shaders/icc: rework ICC profile black point handling
Pipeline #252618 passed with stages
in 12 minutes and 7 seconds
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment