File: kPsychNeedHDRWindow.m

package info (click to toggle)
psychtoolbox-3 3.0.19.14.dfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 86,796 kB
  • sloc: ansic: 176,245; cpp: 20,103; objc: 5,393; sh: 2,753; python: 1,397; php: 384; makefile: 193; java: 113
file content (38 lines) | stat: -rw-r--r-- 1,855 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function rc = kPsychNeedHDRWindow
% kPsychNeedHDRWindow -- Created onscreen window shall be a HDR window.
%
% This flag can be passed to the optional 'imagingmode' parameter of
% Screen('OpenWindow', ...) or PsychImaging('OpenWindow', ...).
%
% It will cause the onscreen window to be marked as using a HDR display
% mode. That means the windows display surface displays on a High dynamic
% range display device, color values are floating point values, and the
% values can and will lie outside the conventional unsigned normalized
% unorm value range of 0.0 - 1.0. Colors are expressed in a unit suitable
% for HDR display, e.g., multiples of 80 nits (defined as SDR intensity
% range) or in nits. E.g., a color value of 1234 could mean a light
% intensity of 1234 nits (candela per square-meter).
%
% This will change a couple of default settings wrt. image precision, and
% also map color values into the target HDR range of the window:
%
% 1. Screen('MakeTexture') will create textures of 16 bpc half-float format
% (aka fp16) by default if the 'floatprecision' flag is omitted, instead of
% creating 8 bpc fixed point textures by default. This is because 8 bpc fixed
% point with only 256 intensity levels is usually inadequate for precision
% image display on a HDR display, and color values outside the unorm 0-1
% range need to be represented if the unit of color is nits or 80x nits.
% Image matrices of uint8 format get converted into fp16 format, applying a
% suitable conversion factor from unorm to HDR.
%
% 2. The movie playback functions will try to decode SDR and HDR movies
% into the suitable linear color space used for HDR display, so that they
% display as intended by the movie creator.
%
% More HDR specific processing/treatment may be implemented in the future.
%

% This is the numeric constant for this mode:
rc = 2^24;

return;