wide-gamut color spaces, like the one in Rec. 2020 (used for UHDTV), the
difference will be anything but subtle. As of [why working in linear
light matters](http://www.4p8.com/eric.brasseur/gamma.html),
-others have explained it better than I can; note also
-that this makes Movit future-proof when the world moves towards 10-
-and 12-bit color precision. The extra power from the GPU makes all of this
+others have explained it better than I can; note also that this makes Movit
+future-proof when the world moves towards 10- and 12-bit color precision
+(although the latter requires Movit to change from 16-bit to 32-bit floating
+point, it is a simple switch). The extra power from the GPU makes all of this
simple, so do we not need to make too many concessions for the sake of speed.
Movit does not currently do ICC profiles or advanced gamut mapping;
// typically inserted by the framework automatically at the end
// of the processing chain.
//
-// Currently supports sRGB and Rec. 601/709.
+// Currently supports sRGB, Rec. 601/709 and Rec. 2020 (10- and 12-bit).
+// Note that Movit's internal formats generally do not have enough accuracy
+// for 12-bit input or output.
#include <string>
// of the processing chain.
//
// Currently supports sRGB, Rec. 601/709 and Rec. 2020 (10- and 12-bit).
+// Note that Movit's internal formats generally do not have enough accuracy
+// for 12-bit input or output.
#include <string>
#ifndef _MOVIT_IMAGE_FORMAT_H
#define _MOVIT_IMAGE_FORMAT_H 1
-// Note: Input depths above 8 bits have not been tested, so Rec. 2020
-// support should be regarded as somewhat untested (it assumes 10-
-// or 12-bit input). We also only support “conventional non-constant
-// luminance” for Rec. 2020, where Y' is derived from R'G'B' instead of
-// RGB, since this is the same system as used in Rec. 601 and 709.
+// Note: Movit's internal processing formats do not have enough
+// accuracy to support 12-bit input, so if you want to use Rec. 2020,
+// you should probably stick to 10-bit, or accept somewhat reduced
+// accuracy for 12-bit. Input depths above 8 bits are also generally
+// less tested.
+//
+// We also only support “conventional non-constant luminance” for Rec. 2020,
+// where Y' is derived from R'G'B' instead of RGB, since this is the same
+// system as used in Rec. 601 and 709.
enum MovitPixelFormat {
FORMAT_RGB,