LIBJXL
Classes | Enumerations
color_encoding.h File Reference

Color Encoding definitions used by JPEG XL. All CIE units are for the standard 1931 2 degree observer. More...

#include <stdint.h>
#include "jxl/types.h"
Include dependency graph for color_encoding.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  JxlColorEncoding
 

Enumerations

enum  JxlColorSpace { JXL_COLOR_SPACE_RGB , JXL_COLOR_SPACE_GRAY , JXL_COLOR_SPACE_XYB , JXL_COLOR_SPACE_UNKNOWN }
 
enum  JxlWhitePoint { JXL_WHITE_POINT_D65 = 1 , JXL_WHITE_POINT_CUSTOM = 2 , JXL_WHITE_POINT_E = 10 , JXL_WHITE_POINT_DCI = 11 }
 
enum  JxlPrimaries { JXL_PRIMARIES_SRGB = 1 , JXL_PRIMARIES_CUSTOM = 2 , JXL_PRIMARIES_2100 = 9 , JXL_PRIMARIES_P3 = 11 }
 
enum  JxlTransferFunction {
  JXL_TRANSFER_FUNCTION_709 = 1 , JXL_TRANSFER_FUNCTION_UNKNOWN = 2 , JXL_TRANSFER_FUNCTION_LINEAR = 8 , JXL_TRANSFER_FUNCTION_SRGB = 13 ,
  JXL_TRANSFER_FUNCTION_PQ = 16 , JXL_TRANSFER_FUNCTION_DCI = 17 , JXL_TRANSFER_FUNCTION_HLG = 18 , JXL_TRANSFER_FUNCTION_GAMMA = 65535
}
 
enum  JxlRenderingIntent { JXL_RENDERING_INTENT_PERCEPTUAL = 0 , JXL_RENDERING_INTENT_RELATIVE , JXL_RENDERING_INTENT_SATURATION , JXL_RENDERING_INTENT_ABSOLUTE }
 

Detailed Description

Color Encoding definitions used by JPEG XL. All CIE units are for the standard 1931 2 degree observer.

Enumeration Type Documentation

◆ JxlColorSpace

Color space of the image data.

Enumerator
JXL_COLOR_SPACE_RGB 

Tristimulus RGB

JXL_COLOR_SPACE_GRAY 

Luminance based, the primaries in JxlColorEncoding must be ignored. This value implies that num_color_channels in JxlBasicInfo is 1, any other value implies num_color_channels is 3.

JXL_COLOR_SPACE_XYB 

XYB (opsin) color space

JXL_COLOR_SPACE_UNKNOWN 

None of the other table entries describe the color space appropriately

◆ JxlPrimaries

Built-in primaries for color encoding. Numeric values match CICP (Rec. ITU-T H.273 | ISO/IEC 23091-2:2019(E)).

Enumerator
JXL_PRIMARIES_SRGB 

The CIE xy values of the red, green and blue primaries are: 0.639998686, 0.330010138; 0.300003784, 0.600003357; 0.150002046, 0.059997204

JXL_PRIMARIES_CUSTOM 

Custom white point stored in JxlColorEncoding primaries_red_xy, primaries_green_xy and primaries_blue_xy.

JXL_PRIMARIES_2100 

As specified in Rec. ITU-R BT.2100-1

JXL_PRIMARIES_P3 

As specified in SMPTE RP 431-2

◆ JxlRenderingIntent

Renderig intent for color encoding, as specified in ISO 15076-1:2010

Enumerator
JXL_RENDERING_INTENT_PERCEPTUAL 

vendor-specific

JXL_RENDERING_INTENT_RELATIVE 

media-relative

JXL_RENDERING_INTENT_SATURATION 

vendor-specific

JXL_RENDERING_INTENT_ABSOLUTE 

ICC-absolute

◆ JxlTransferFunction

Built-in transfer functions for color encoding. Numeric values match CICP (Rec. ITU-T H.273 | ISO/IEC 23091-2:2019(E)) unless specified otherwise.

Enumerator
JXL_TRANSFER_FUNCTION_709 

As specified in SMPTE RP 431-2

JXL_TRANSFER_FUNCTION_UNKNOWN 

None of the other table entries describe the transfer function.

JXL_TRANSFER_FUNCTION_LINEAR 

The gamma exponent is 1

JXL_TRANSFER_FUNCTION_SRGB 

As specified in IEC 61966-2-1 sRGB

JXL_TRANSFER_FUNCTION_PQ 

As specified in SMPTE ST 428-1

JXL_TRANSFER_FUNCTION_DCI 

As specified in SMPTE ST 428-1

JXL_TRANSFER_FUNCTION_HLG 

As specified in Rec. ITU-R BT.2100-1 (HLG)

JXL_TRANSFER_FUNCTION_GAMMA 

Transfer function follows power law given by the gamma value in JxlColorEncoding. Not a CICP value.

◆ JxlWhitePoint

Built-in whitepoints for color encoding. Numeric values match CICP (Rec. ITU-T H.273 | ISO/IEC 23091-2:2019(E)).

Enumerator
JXL_WHITE_POINT_D65 

CIE Standard Illuminant D65: 0.3127, 0.3290

JXL_WHITE_POINT_CUSTOM 

Custom white point stored in JxlColorEncoding white_point.

JXL_WHITE_POINT_E 

CIE Standard Illuminant E (equal-energy): 1/3, 1/3

JXL_WHITE_POINT_DCI 

DCI-P3 from SMPTE RP 431-2: 0.314, 0.351