![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/colorspaces.h"#include "common/colormatrices.c"#include "common/darktable.h"#include "common/debug.h"#include "common/image_cache.h"#include "common/file_location.h"#include "common/math.h"#include "common/matrices.h"#include "common/srgb_tone_curve_values.h"#include "common/utility.h"#include "control/conf.h"#include "control/control.h"#include "develop/imageop.h"#include <strings.h>#include "common/imageio_jpeg.h"#include "common/imageio_png.h"#include "common/imageio_tiff.h"
Include dependency graph for colorspaces.c:Go to the source code of this file.
Macros | |
| #define | generate_mat3inv_body(c_type, A, B) |
| #define | A(y, x) src[(y - 1) * 3 + (x - 1)] |
| #define | B(y, x) dst[(y - 1) * 3 + (x - 1)] |
Functions | |
| static dt_colorspaces_color_profile_t * | _create_profile (dt_colorspaces_color_profile_type_t type, cmsHPROFILE profile, const char *name, int in_pos, int out_pos, int display_pos, int category_pos, int work_pos) |
| int | mat3inv_float (float *const dst, const float *const src) |
| int | mat3inv (float *const dst, const float *const src) |
| int | mat3inv_double (double *const dst, const double *const src) |
| static const dt_colorspaces_color_profile_t * | _get_profile (dt_colorspaces_t *self, dt_colorspaces_color_profile_type_t type, const char *filename, dt_colorspaces_profile_direction_t direction) |
| static __DT_CLONE_TARGETS__ int | dt_colorspaces_get_matrix_from_profile (cmsHPROFILE prof, dt_colormatrix_t matrix, float *lutr, float *lutg, float *lutb, const int lutsize, const int input) |
| int | dt_colorspaces_get_matrix_from_input_profile (cmsHPROFILE prof, dt_colormatrix_t matrix, float *lutr, float *lutg, float *lutb, const int lutsize) |
| int | dt_colorspaces_get_matrix_from_output_profile (cmsHPROFILE prof, dt_colormatrix_t matrix, float *lutr, float *lutg, float *lutb, const int lutsize) |
| static cmsHPROFILE | dt_colorspaces_create_lab_profile () |
| static void | _compute_prequantized_primaries (const cmsCIExyY *whitepoint, const cmsCIExyYTRIPLE *primaries, cmsCIEXYZTRIPLE *primaries_prequantized) |
| static cmsHPROFILE | _create_lcms_profile (const char *desc, const char *dmdd, const cmsCIExyY *whitepoint, const cmsCIExyYTRIPLE *primaries, cmsToneCurve *trc, gboolean v2) |
| static double | _PQ_fct (double x) |
| static double | _HLG_fct (double x) |
| static cmsToneCurve * | _colorspaces_create_transfer (int32_t size, double(*fct)(double)) |
| static cmsHPROFILE | _colorspaces_create_srgb_profile (gboolean v2) |
| static cmsHPROFILE | dt_colorspaces_create_srgb_profile () |
| static cmsHPROFILE | dt_colorspaces_create_srgb_profile_v4 () |
| static cmsHPROFILE | dt_colorspaces_create_brg_profile () |
| static cmsHPROFILE | dt_colorspaces_create_gamma_rec709_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_itur_bt1886_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_adobergb_profile (void) |
| cmsHPROFILE | dt_colorspaces_create_alternate_profile (const char *makermodel) |
| cmsHPROFILE | dt_colorspaces_create_vendor_profile (const char *makermodel) |
| cmsHPROFILE | dt_colorspaces_create_darktable_profile (const char *makermodel) |
| static cmsHPROFILE | dt_colorspaces_create_xyz_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_linear_rec709_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_linear_rec2020_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_pq_rec2020_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_hlg_rec2020_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_pq_p3_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_hlg_p3_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_display_p3_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_linear_prophoto_rgb_profile (void) |
| static cmsHPROFILE | dt_colorspaces_create_linear_infrared_profile (void) |
| const dt_colorspaces_color_profile_t * | dt_colorspaces_get_work_profile (const int32_t imgid) |
| dt_colorspaces_color_profile_type_t | dt_image_find_best_color_profile (int32_t imgid, cmsHPROFILE *output, gboolean *new_profile) |
| Best effort to find a suitable (input) color profile for a given image, using embedded ICC or EXIF whenever possible. This will also init the profile in the image cache. | |
| dt_colorspaces_color_profile_type_t | dt_colorspaces_get_input_profile_from_image (int32_t imgid, dt_colorspaces_color_profile_type_t requested, cmsHPROFILE *output, gboolean *new_profile) |
| Resolve an embedded/matrix input profile for a given image, honoring the requested type when possible. For non-RAW images, falls back to dt_image_find_best_color_profile() to avoid invalid matrix usage. | |
| const cmsHPROFILE | dt_colorspaces_get_embedded_profile (const int32_t imgid, dt_colorspaces_color_profile_type_t *type, gboolean *new_profile) |
| const dt_colorspaces_color_profile_t * | _build_embedded_profile (const int32_t imgid, dt_colorspaces_color_profile_type_t *type) |
| const dt_colorspaces_color_profile_t * | dt_colorspaces_get_output_profile (const int32_t imgid, dt_colorspaces_color_profile_type_t *over_type, const char *over_filename) |
| static cmsHPROFILE | dt_colorspaces_create_xyzmatrix_profile (const float mat[3][3]) |
| cmsHPROFILE | dt_colorspaces_create_xyzimatrix_profile (float mat[3][3]) |
| static cmsHPROFILE | _ensure_rgb_profile (cmsHPROFILE profile) |
| cmsHPROFILE | dt_colorspaces_get_rgb_profile_from_mem (uint8_t *data, uint32_t size) |
| void | dt_colorspaces_cleanup_profile (cmsHPROFILE p) |
| void | dt_colorspaces_get_profile_name (cmsHPROFILE p, const char *language, const char *country, char *name, size_t len) |
| void | rgb2hsl (const dt_aligned_pixel_t rgb, float *h, float *s, float *l) |
| static | __attribute__ ((always_inline)) |
| void | hsl2rgb (dt_aligned_pixel_t rgb, float h, float s, float l) |
| static void | _update_display_transforms (dt_colorspaces_t *self) |
| void | dt_colorspaces_update_display_transforms () |
| void | dt_colorspaces_transform_rgba_float_row (const cmsHTRANSFORM transform, const float *in, float *out, const int width) |
| __DT_CLONE_TARGETS__ void | dt_colorspaces_transform_rgba_float_image (const cmsHTRANSFORM transform, const float *image_in, float *image_out, const int width, const int height) |
| void | dt_colorspaces_transform_rgba8_to_bgra8 (const cmsHTRANSFORM transform, const uint8_t *image_in, uint8_t *image_out, const int width, const int height) |
| static void | _update_display_profile (guchar *tmp_data, gsize size, char *name, size_t name_size) |
| static void | cms_error_handler (cmsContext ContextID, cmsUInt32Number ErrorCode, const char *text) |
| static gint | _sort_profiles (gconstpointer a, gconstpointer b) |
| static GList * | load_profile_from_dir (const char *subdir) |
| dt_colorspaces_t * | dt_colorspaces_init () |
| void | dt_colorspaces_cleanup (dt_colorspaces_t *self) |
| const char * | dt_colorspaces_get_name (dt_colorspaces_color_profile_type_t type, const char *filename) |
| void | dt_colorspaces_set_display_profile (const dt_colorspaces_color_profile_type_t profile_type) |
| static gboolean | _colorspaces_is_base_name (const char *profile) |
| static const char * | _colorspaces_get_base_name (const char *profile) |
| gboolean | dt_colorspaces_is_profile_equal (const char *fullname, const char *filename) |
| dt_colorspaces_color_profile_type_t | dt_colorspaces_cicp_to_type (const dt_colorspaces_cicp_t *cicp, const char *filename) |
| const dt_colorspaces_color_profile_t * | dt_colorspaces_get_profile (dt_colorspaces_color_profile_type_t type, const char *filename, dt_colorspaces_profile_direction_t direction) |
| static __DT_CLONE_TARGETS__ void | dt_colorspaces_pseudoinverse (double(*in)[3], double(*out)[3], int size) |
| int | dt_colorspaces_conversion_matrices_xyz (const float adobe_XYZ_to_CAM[4][3], float in_XYZ_to_CAM[9], double XYZ_to_CAM[4][3], double CAM_to_XYZ[3][4]) |
| __DT_CLONE_TARGETS__ int | dt_colorspaces_conversion_matrices_rgb (const float adobe_XYZ_to_CAM[4][3], double out_RGB_to_CAM[4][3], double out_CAM_to_RGB[3][4], const float *embedded_matrix, double mul[4]) |
| void | dt_colorspaces_cygm_apply_coeffs_to_rgb (float *out, const float *in, int num, double RGB_to_CAM[4][3], double CAM_to_RGB[3][4], dt_aligned_pixel_t coeffs) |
| __DT_CLONE_TARGETS__ void | dt_colorspaces_cygm_to_rgb (float *out, int num, double CAM_to_RGB[3][4]) |
| void | dt_colorspaces_rgb_to_cygm (float *out, int num, double RGB_to_CAM[4][3]) |
Variables | |
| static const cmsCIEXYZ | d65 = {0.95045471, 1.00000000, 1.08905029} |
| static const cmsCIExyY | D65xyY = {0.312700492, 0.329000939, 1.0} |
| static const cmsCIExyY | D50xyY = {0.3457, 0.3585, 1.0} |
| static const cmsCIExyYTRIPLE | sRGB_Primaries |
| static const cmsCIExyYTRIPLE | Rec2020_Primaries |
| static const cmsCIExyYTRIPLE | Rec709_Primaries |
| static const cmsCIExyYTRIPLE | Adobe_Primaries |
| static const cmsCIExyYTRIPLE | P3_Primaries |
| static const cmsCIExyYTRIPLE | ProPhoto_Primaries |
| cmsCIEXYZTRIPLE | Rec709_Primaries_Prequantized |
Definition at line 186 of file colorspaces.c.
Definition at line 187 of file colorspaces.c.
Definition at line 159 of file colorspaces.c.
|
inlinestatic |
Definition at line 1443 of file colorspaces.c.
| const dt_colorspaces_color_profile_t * _build_embedded_profile | ( | const int32_t | imgid, |
| dt_colorspaces_color_profile_type_t * | type | ||
| ) |
Definition at line 1180 of file colorspaces.c.
References _create_profile(), darktable_t::color_profiles, container(), darktable, dt_colorspaces_get_embedded_profile(), dt_colorspaces_get_profile_name(), IS_NULL_PTR, dt_colorspaces_t::profiles, and type.
Referenced by dt_colorspaces_get_output_profile().
|
static |
Definition at line 459 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, and sRGB_Primaries.
Referenced by dt_colorspaces_create_srgb_profile(), and dt_colorspaces_create_srgb_profile_v4().
Definition at line 443 of file colorspaces.c.
References dt_free, i, MIN, size, and x.
Referenced by dt_colorspaces_create_hlg_p3_rgb_profile(), dt_colorspaces_create_hlg_rec2020_rgb_profile(), dt_colorspaces_create_pq_p3_rgb_profile(), and dt_colorspaces_create_pq_rec2020_rgb_profile().
|
static |
Definition at line 2251 of file colorspaces.c.
References f.
Referenced by dt_colorspaces_is_profile_equal().
|
static |
Definition at line 2240 of file colorspaces.c.
References f, FALSE, and TRUE.
Referenced by dt_colorspaces_is_profile_equal().
|
static |
Definition at line 337 of file colorspaces.c.
References B, double(), and R.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 362 of file colorspaces.c.
Referenced by _colorspaces_create_srgb_profile(), dt_colorspaces_create_adobergb_profile(), dt_colorspaces_create_brg_profile(), dt_colorspaces_create_display_p3_rgb_profile(), dt_colorspaces_create_gamma_rec709_rgb_profile(), dt_colorspaces_create_hlg_p3_rgb_profile(), dt_colorspaces_create_hlg_rec2020_rgb_profile(), dt_colorspaces_create_itur_bt1886_rgb_profile(), dt_colorspaces_create_linear_infrared_profile(), dt_colorspaces_create_linear_prophoto_rgb_profile(), dt_colorspaces_create_linear_rec2020_rgb_profile(), dt_colorspaces_create_linear_rec709_rgb_profile(), dt_colorspaces_create_pq_p3_rgb_profile(), and dt_colorspaces_create_pq_rec2020_rgb_profile().
|
static |
Definition at line 1471 of file colorspaces.c.
References dt_colorspaces_color_profile_t::category_pos, dt_colorspaces_color_profile_t::display_pos, dt_colorspaces_color_profile_t::in_pos, dt_colorspaces_color_profile_t::name, name, dt_colorspaces_color_profile_t::out_pos, dt_colorspaces_color_profile_t::profile, dt_colorspaces_color_profile_t::type, type, and dt_colorspaces_color_profile_t::work_pos.
Referenced by _build_embedded_profile(), and dt_colorspaces_init().
|
static |
Definition at line 1307 of file colorspaces.c.
References Rec709_Primaries_Prequantized.
Referenced by dt_colorspaces_get_rgb_profile_from_mem(), and load_profile_from_dir().
|
static |
Definition at line 2507 of file colorspaces.c.
References DT_COLORSPACE_FILE, dt_colorspaces_is_profile_equal(), DT_PROFILE_DIRECTION_DISPLAY, DT_PROFILE_DIRECTION_IN, DT_PROFILE_DIRECTION_OUT, DT_PROFILE_DIRECTION_WORK, p, dt_colorspaces_t::profiles, and type.
Referenced by _update_display_transforms(), and dt_colorspaces_get_profile().
BT.2100 HLG EOTF inverse, mapping non-linear HLG code values to linear light. The standard is defined on [0, +inf), but we extend it by odd symmetry so profile round-trips keep signed RGB values continuous around black instead of clipping negative excursions.
Definition at line 422 of file colorspaces.c.
References A, B, C, sign, and x.
Referenced by dt_colorspaces_create_hlg_p3_rgb_profile(), and dt_colorspaces_create_hlg_rec2020_rgb_profile().
Definition at line 400 of file colorspaces.c.
Referenced by dt_colorspaces_create_pq_p3_rgb_profile(), and dt_colorspaces_create_pq_rec2020_rgb_profile().
|
static |
Definition at line 1639 of file colorspaces.c.
References dt_free, and dt_colorspaces_color_profile_t::name.
Referenced by load_profile_from_dir().
|
static |
Definition at line 1606 of file colorspaces.c.
References darktable_t::color_profiles, darktable, DT_COLORSPACE_DISPLAY, dt_colorspaces_cleanup_profile(), dt_colorspaces_get_profile_name(), dt_colorspaces_update_display_transforms(), dt_free, name, p, dt_colorspaces_t::profiles, size, dt_colorspaces_t::xprofile_data, and dt_colorspaces_t::xprofile_size.
Referenced by dt_colorspaces_set_display_profile().
|
static |
Definition at line 1490 of file colorspaces.c.
References _get_profile(), dt_colorspaces_t::display_filename, dt_colorspaces_t::display_intent, dt_colorspaces_t::display_type, DT_COLORSPACE_ADOBERGB, DT_COLORSPACE_SRGB, DT_COLORSPACE_XYZ, DT_PROFILE_DIRECTION_DISPLAY, DT_PROFILE_DIRECTION_IN, IS_NULL_PTR, dt_colorspaces_color_profile_t::profile, dt_colorspaces_t::transform_adobe_rgb_to_display, dt_colorspaces_t::transform_display_to_adobe_rgb, dt_colorspaces_t::transform_srgb_to_display, dt_colorspaces_t::transform_xyz_to_display, and TYPE_XYZA_FLT.
Referenced by dt_colorspaces_init(), and dt_colorspaces_update_display_transforms().
|
static |
Definition at line 1634 of file colorspaces.c.
References DT_DEBUG_COLORPROFILE, and dt_print().
Referenced by dt_colorspaces_init().
| dt_colorspaces_color_profile_type_t dt_colorspaces_cicp_to_type | ( | const dt_colorspaces_cicp_t * | cicp, |
| const char * | filename | ||
| ) |
try to infer profile type from CICP
Definition at line 2272 of file colorspaces.c.
References dt_colorspaces_cicp_t::color_primaries, DT_CICP_COLOR_PRIMARIES_P3, DT_CICP_COLOR_PRIMARIES_REC2020, DT_CICP_COLOR_PRIMARIES_REC709, DT_CICP_COLOR_PRIMARIES_UNSPECIFIED, DT_CICP_COLOR_PRIMARIES_XYZ, DT_CICP_MATRIX_COEFFICIENTS_CHROMA_DERIVED_NCL, DT_CICP_MATRIX_COEFFICIENTS_IDENTITY, DT_CICP_MATRIX_COEFFICIENTS_REC2020_NCL, DT_CICP_MATRIX_COEFFICIENTS_REC601, DT_CICP_MATRIX_COEFFICIENTS_REC709, DT_CICP_MATRIX_COEFFICIENTS_SYCC, DT_CICP_MATRIX_COEFFICIENTS_UNSPECIFIED, DT_CICP_TRANSFER_CHARACTERISTICS_HLG, DT_CICP_TRANSFER_CHARACTERISTICS_LINEAR, DT_CICP_TRANSFER_CHARACTERISTICS_PQ, DT_CICP_TRANSFER_CHARACTERISTICS_REC2020_10B, DT_CICP_TRANSFER_CHARACTERISTICS_REC2020_12B, DT_CICP_TRANSFER_CHARACTERISTICS_REC601, DT_CICP_TRANSFER_CHARACTERISTICS_REC709, DT_CICP_TRANSFER_CHARACTERISTICS_SRGB, DT_CICP_TRANSFER_CHARACTERISTICS_UNSPECIFIED, DT_COLORSPACE_DISPLAY_P3, DT_COLORSPACE_HLG_P3, DT_COLORSPACE_HLG_REC2020, DT_COLORSPACE_LIN_REC2020, DT_COLORSPACE_LIN_REC709, DT_COLORSPACE_NONE, DT_COLORSPACE_PQ_P3, DT_COLORSPACE_PQ_REC2020, DT_COLORSPACE_REC709, DT_COLORSPACE_SRGB, DT_COLORSPACE_XYZ, DT_DEBUG_IMAGEIO, dt_print(), IS_NULL_PTR, dt_colorspaces_cicp_t::matrix_coefficients, and dt_colorspaces_cicp_t::transfer_characteristics.
Referenced by dt_image_find_best_color_profile().
| void dt_colorspaces_cleanup | ( | dt_colorspaces_t * | self | ) |
cleanup on shutdown
Definition at line 1911 of file colorspaces.c.
References dt_colorspaces_t::colord_profile_file, dt_colorspaces_t::display_filename, dt_colorspaces_t::display_intent, dt_colorspaces_t::display_type, dt_colorspaces_cleanup_profile(), dt_conf_set_int(), dt_conf_set_string(), dt_free, dt_free_gpointer(), dt_colorspaces_t::mode, p, dt_colorspaces_t::profiles, dt_colorspaces_t::softproof_filename, dt_colorspaces_t::softproof_intent, dt_colorspaces_t::softproof_type, dt_colorspaces_t::transform_adobe_rgb_to_display, dt_colorspaces_t::transform_display_to_adobe_rgb, dt_colorspaces_t::transform_srgb_to_display, dt_colorspaces_t::transform_xyz_to_display, dt_colorspaces_t::xprofile_data, and dt_colorspaces_t::xprofile_lock.
Referenced by dt_cleanup().
| void dt_colorspaces_cleanup_profile | ( | cmsHPROFILE | p | ) |
free the resources of a profile created with the functions above.
Definition at line 1362 of file colorspaces.c.
References IS_NULL_PTR, and p.
Referenced by _update_display_profile(), cleanup_pipe(), commit_params(), dt_colorspaces_cleanup(), and dt_colorspaces_get_input_profile_from_image().
| __DT_CLONE_TARGETS__ int dt_colorspaces_conversion_matrices_rgb | ( | const float | adobe_XYZ_to_CAM[4][3], |
| double | RGB_to_CAM[4][3], | ||
| double | CAM_to_RGB[3][4], | ||
| const float * | embedded_matrix, | ||
| double | mul[4] | ||
| ) |
Calculate CAM->RGB, RGB->CAM matrices and default WB multipliers
Definition at line 2601 of file colorspaces.c.
References dt_colorspaces_pseudoinverse(), FALSE, i, IS_NULL_PTR, k, and TRUE.
Referenced by _custom_wb_from_coeffs(), calculate_bogus_daylight_wb(), commit_params(), gui_update(), and legacy_params().
| int dt_colorspaces_conversion_matrices_xyz | ( | const float | adobe_XYZ_to_CAM[4][3], |
| float | in_XYZ_to_CAM[9], | ||
| double | XYZ_to_CAM[4][3], | ||
| double | CAM_to_XYZ[3][4] | ||
| ) |
Calculate CAM->XYZ, XYZ->CAM matrices
Definition at line 2569 of file colorspaces.c.
References dt_colorspaces_pseudoinverse(), FALSE, i, and TRUE.
Referenced by prepare_matrices().
|
static |
Definition at line 525 of file colorspaces.c.
References _create_lcms_profile(), Adobe_Primaries, D65xyY, and TRUE.
Referenced by dt_colorspaces_init().
| cmsHPROFILE dt_colorspaces_create_alternate_profile | ( | const char * | makermodel | ) |
create a ICC virtual profile from the shipped alternate matrices in darktable.
Definition at line 539 of file colorspaces.c.
References dt_alternate_colormatrices, dt_alternate_colormatrix_cnt, IS_NULL_PTR, k, name, and preset.
Referenced by _resolve_input_profile().
|
static |
Definition at line 482 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, sRGB_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
| cmsHPROFILE dt_colorspaces_create_darktable_profile | ( | const char * | makermodel | ) |
create a ICC virtual profile from the shipped presets in darktable.
Definition at line 639 of file colorspaces.c.
References dt_profiled_colormatrices, dt_profiled_colormatrix_cnt, IS_NULL_PTR, k, name, and preset.
Referenced by _resolve_input_profile().
|
static |
Definition at line 787 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, P3_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 497 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, Rec709_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 775 of file colorspaces.c.
References _colorspaces_create_transfer(), _create_lcms_profile(), _HLG_fct(), D65xyY, P3_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 751 of file colorspaces.c.
References _colorspaces_create_transfer(), _create_lcms_profile(), _HLG_fct(), D65xyY, Rec2020_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 510 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, Rec709_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 332 of file colorspaces.c.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 812 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, FALSE, and sRGB_Primaries.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 800 of file colorspaces.c.
References _create_lcms_profile(), D50xyY, ProPhoto_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 727 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, Rec2020_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 715 of file colorspaces.c.
References _create_lcms_profile(), D65xyY, Rec709_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 763 of file colorspaces.c.
References _colorspaces_create_transfer(), _create_lcms_profile(), _PQ_fct(), D65xyY, P3_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 739 of file colorspaces.c.
References _colorspaces_create_transfer(), _create_lcms_profile(), _PQ_fct(), D65xyY, Rec2020_Primaries, and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 472 of file colorspaces.c.
References _colorspaces_create_srgb_profile(), and TRUE.
Referenced by dt_colorspaces_init().
|
static |
Definition at line 477 of file colorspaces.c.
References _colorspaces_create_srgb_profile(), and FALSE.
Referenced by dt_colorspaces_init().
| cmsHPROFILE dt_colorspaces_create_vendor_profile | ( | const char * | makermodel | ) |
create a ICC virtual profile from the shipped vendor matrices in darktable.
Definition at line 589 of file colorspaces.c.
References dt_vendor_colormatrices, dt_vendor_colormatrix_cnt, IS_NULL_PTR, k, name, and preset.
Referenced by _resolve_input_profile().
|
static |
Definition at line 689 of file colorspaces.c.
References IS_NULL_PTR.
Referenced by dt_colorspaces_init().
| cmsHPROFILE dt_colorspaces_create_xyzimatrix_profile | ( | float | cam_xyz[3][3] | ) |
create a profile from a xyz->camera matrix.
Definition at line 1299 of file colorspaces.c.
References dt_colorspaces_create_xyzmatrix_profile(), and mat3inv().
Referenced by dt_colorspaces_get_input_profile_from_image(), and dt_image_find_best_color_profile().
|
static |
Definition at line 1259 of file colorspaces.c.
References d65, IS_NULL_PTR, k, and x.
Referenced by dt_colorspaces_create_xyzimatrix_profile().
| void dt_colorspaces_cygm_apply_coeffs_to_rgb | ( | float * | out, |
| const float * | in, | ||
| int | num, | ||
| double | RGB_to_CAM[4][3], | ||
| double | CAM_to_RGB[3][4], | ||
| dt_aligned_pixel_t | coeffs | ||
| ) |
Applies CYGM WB coeffs to an image that's already been converted to RGB by dt_colorspaces_cygm_to_rgb
Definition at line 2681 of file colorspaces.c.
References __OMP_PARALLEL_FOR__, i, and out.
| __DT_CLONE_TARGETS__ void dt_colorspaces_cygm_to_rgb | ( | float * | out, |
| int | num, | ||
| double | CAM_to_RGB[3][4] | ||
| ) |
convert CYGM buffer to RGB
Definition at line 2711 of file colorspaces.c.
References __OMP_PARALLEL_FOR__, i, k, and out.
Referenced by gui_update_from_coeffs(), and process().
| const cmsHPROFILE dt_colorspaces_get_embedded_profile | ( | const int32_t | imgid, |
| dt_colorspaces_color_profile_type_t * | type, | ||
| gboolean * | new_profile | ||
| ) |
return the embedded profile of a particular image
Definition at line 1172 of file colorspaces.c.
References dt_image_find_best_color_profile(), and type.
Referenced by _build_embedded_profile(), and commit_params().
| dt_colorspaces_color_profile_type_t dt_colorspaces_get_input_profile_from_image | ( | int32_t | imgid, |
| dt_colorspaces_color_profile_type_t | requested, | ||
| cmsHPROFILE * | output, | ||
| gboolean * | new_profile | ||
| ) |
Resolve an embedded/matrix input profile for a given image, honoring the requested type when possible. For non-RAW images, falls back to dt_image_find_best_color_profile() to avoid invalid matrix usage.
| imgid | ID of the picture |
| requested | Requested embedded/matrix profile type |
| output | If not NULL, writes the generated color profile into this pointer. |
| new_profile | Will be set to true if a new profile was generated (aka embedded profile) and will need to be freed. |
Definition at line 1067 of file colorspaces.c.
References dt_image_t::adobe_XYZ_to_CAM, dt_image_t::d65_color_matrix, darktable, DT_COLORSPACE_EMBEDDED_ICC, DT_COLORSPACE_EMBEDDED_MATRIX, DT_COLORSPACE_LIN_REC709, DT_COLORSPACE_NONE, DT_COLORSPACE_STANDARD_MATRIX, dt_colorspaces_cleanup_profile(), dt_colorspaces_create_xyzimatrix_profile(), dt_colorspaces_get_rgb_profile_from_mem(), dt_image_cache_get(), dt_image_cache_read_release(), dt_image_find_best_color_profile(), dt_image_is_matrix_correction_supported(), FALSE, darktable_t::image_cache, IS_NULL_PTR, dt_image_t::profile, dt_image_t::profile_size, TRUE, and type.
Referenced by _resolve_input_profile().
| int dt_colorspaces_get_matrix_from_input_profile | ( | cmsHPROFILE | prof, |
| dt_colormatrix_t | matrix, | ||
| float * | lutr, | ||
| float * | lutg, | ||
| float * | lutb, | ||
| const int | lutsize | ||
| ) |
extracts tonecurves and color matrix prof to XYZ from a given input profile, returns 0 on success (curves and matrix are inverted for input)
Definition at line 320 of file colorspaces.c.
References dt_colorspaces_get_matrix_from_profile(), lutsize, and matrix.
Referenced by commit_params(), dt_colorspaces_init(), and dt_ioppr_generate_profile_info().
| int dt_colorspaces_get_matrix_from_output_profile | ( | cmsHPROFILE | prof, |
| dt_colormatrix_t | matrix, | ||
| float * | lutr, | ||
| float * | lutg, | ||
| float * | lutb, | ||
| const int | lutsize | ||
| ) |
extracts tonecurves and color matrix prof to XYZ from a given output profile, returns 0 on success.
Definition at line 326 of file colorspaces.c.
References dt_colorspaces_get_matrix_from_profile(), lutsize, and matrix.
Referenced by commit_params(), dt_colorspaces_init(), and dt_ioppr_generate_profile_info().
|
static |
Definition at line 208 of file colorspaces.c.
References IS_NULL_PTR, k, lutsize, mat3SSEinv(), and matrix.
Referenced by dt_colorspaces_get_matrix_from_input_profile(), and dt_colorspaces_get_matrix_from_output_profile().
| const char * dt_colorspaces_get_name | ( | dt_colorspaces_color_profile_type_t | type, |
| const char * | filename | ||
| ) |
get a nice printable name.
Definition at line 1949 of file colorspaces.c.
References DT_COLORSPACE_ADOBERGB, DT_COLORSPACE_ALTERNATE_MATRIX, DT_COLORSPACE_BRG, DT_COLORSPACE_DISPLAY, DT_COLORSPACE_DISPLAY2, DT_COLORSPACE_DISPLAY_P3, DT_COLORSPACE_EMBEDDED_ICC, DT_COLORSPACE_EMBEDDED_MATRIX, DT_COLORSPACE_ENHANCED_MATRIX, DT_COLORSPACE_EXPORT, DT_COLORSPACE_FILE, DT_COLORSPACE_HLG_P3, DT_COLORSPACE_HLG_REC2020, DT_COLORSPACE_INFRARED, DT_COLORSPACE_ITUR_BT1886, DT_COLORSPACE_LAB, DT_COLORSPACE_LAST, DT_COLORSPACE_LIN_REC2020, DT_COLORSPACE_LIN_REC709, DT_COLORSPACE_NONE, DT_COLORSPACE_PQ_P3, DT_COLORSPACE_PQ_REC2020, DT_COLORSPACE_PROPHOTO_RGB, DT_COLORSPACE_REC709, DT_COLORSPACE_SOFTPROOF, DT_COLORSPACE_SRGB, DT_COLORSPACE_STANDARD_MATRIX, DT_COLORSPACE_VENDOR_MATRIX, DT_COLORSPACE_WORK, DT_COLORSPACE_XYZ, and type.
Referenced by _ioporder_runtime_band_text(), _resolve_work_profile(), _save_clut_callback(), commit_params(), gui_update(), profile_changed(), update_profile_list(), workicc_changed(), and write_image().
| const dt_colorspaces_color_profile_t * dt_colorspaces_get_output_profile | ( | const int32_t | imgid, |
| dt_colorspaces_color_profile_type_t * | over_type, | ||
| const char * | over_filename | ||
| ) |
return the output profile as set in colorout, taking export override into account if passed in.
Definition at line 1203 of file colorspaces.c.
References _build_embedded_profile(), DT_COLORSPACE_EMBEDDED_ICC, DT_COLORSPACE_EMBEDDED_MATRIX, DT_COLORSPACE_NONE, DT_COLORSPACE_SRGB, DT_COLORSPACE_STANDARD_MATRIX, dt_colorspaces_get_profile(), DT_PROFILE_DIRECTION_DISPLAY, DT_PROFILE_DIRECTION_OUT, IS_NULL_PTR, and p.
Referenced by _export_image(), dt_imageio_export_with_flags(), dt_imageio_jpeg_write_with_icc_profile(), write_image(), write_image(), write_image(), write_image(), write_image(), write_image(), and write_image().
| const dt_colorspaces_color_profile_t * dt_colorspaces_get_profile | ( | dt_colorspaces_color_profile_type_t | type, |
| const char * | filename, | ||
| dt_colorspaces_profile_direction_t | direction | ||
| ) |
get the profile described by type & filename. this doesn't support image specifics like embedded profiles or camera matrices
Definition at line 2529 of file colorspaces.c.
References _get_profile(), darktable_t::color_profiles, darktable, and type.
Referenced by _export_image(), _get_xyz_to_rgb_matrix(), _icc_blob_from_profile_key(), _read_chunky_16_Lab(), _read_chunky_8_Lab(), _resolve_input_profile(), _select_normalization_profile(), _transform_from_to_rgb_lab_lcms2(), _view_image_get_surface_internal(), commit_params(), dt_colorspaces_get_output_profile(), dt_colorspaces_get_work_profile(), dt_image_find_best_color_profile(), dt_imageio_tiff_read_profile(), dt_ioppr_generate_profile_info(), dt_mipmap_cache_swap_at_size(), and gui_init().
| void dt_colorspaces_get_profile_name | ( | cmsHPROFILE | p, |
| const char * | language, | ||
| const char * | country, | ||
| char * | name, | ||
| size_t | len | ||
| ) |
wrapper to get the name from a color profile. this tries to handle character encodings.
Definition at line 1368 of file colorspaces.c.
References dt_free, error(), IS_NULL_PTR, name, p, and size.
Referenced by _build_embedded_profile(), _update_display_profile(), load_profile_from_dir(), and write_image().
| cmsHPROFILE dt_colorspaces_get_rgb_profile_from_mem | ( | uint8_t * | data, |
| uint32_t | size | ||
| ) |
return an rgb lcms2 profile from data. if data points to a grayscale profile a new rgb profile is created that has the same TRC, black and white point and rec709 primaries.
Definition at line 1355 of file colorspaces.c.
References _ensure_rgb_profile(), and size.
Referenced by dt_colorspaces_get_input_profile_from_image(), and dt_image_find_best_color_profile().
| const dt_colorspaces_color_profile_t * dt_colorspaces_get_work_profile | ( | const int32_t | imgid | ) |
return the work profile as set in colorin
Definition at line 827 of file colorspaces.c.
References darktable, darktable_t::db, DT_COLORSPACE_LIN_REC2020, dt_colorspaces_get_profile(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, DT_PROFILE_DIRECTION_WORK, darktable_t::iop, IS_NULL_PTR, p, and type.
| dt_colorspaces_t * dt_colorspaces_init | ( | ) |
populate the global color profile lists
Definition at line 1720 of file colorspaces.c.
References _compute_prequantized_primaries(), _create_profile(), _update_display_transforms(), dt_colorspaces_color_profile_t::category_pos, cms_error_handler(), color_space, D65xyY, dt_colorspaces_t::display_filename, dt_colorspaces_t::display_intent, dt_colorspaces_color_profile_t::display_pos, dt_colorspaces_t::display_type, DT_COLORSPACE_ADOBERGB, DT_COLORSPACE_BRG, DT_COLORSPACE_DISPLAY, DT_COLORSPACE_DISPLAY_P3, DT_COLORSPACE_EXPORT, DT_COLORSPACE_FILE, DT_COLORSPACE_HLG_P3, DT_COLORSPACE_HLG_REC2020, DT_COLORSPACE_INFRARED, DT_COLORSPACE_ITUR_BT1886, DT_COLORSPACE_LAB, DT_COLORSPACE_LAST, DT_COLORSPACE_LIN_REC2020, DT_COLORSPACE_LIN_REC709, DT_COLORSPACE_PQ_P3, DT_COLORSPACE_PQ_REC2020, DT_COLORSPACE_PROPHOTO_RGB, DT_COLORSPACE_REC709, DT_COLORSPACE_SOFTPROOF, DT_COLORSPACE_SRGB, DT_COLORSPACE_WORK, DT_COLORSPACE_XYZ, dt_colorspaces_create_adobergb_profile(), dt_colorspaces_create_brg_profile(), dt_colorspaces_create_display_p3_rgb_profile(), dt_colorspaces_create_gamma_rec709_rgb_profile(), dt_colorspaces_create_hlg_p3_rgb_profile(), dt_colorspaces_create_hlg_rec2020_rgb_profile(), dt_colorspaces_create_itur_bt1886_rgb_profile(), dt_colorspaces_create_lab_profile(), dt_colorspaces_create_linear_infrared_profile(), dt_colorspaces_create_linear_prophoto_rgb_profile(), dt_colorspaces_create_linear_rec2020_rgb_profile(), dt_colorspaces_create_linear_rec709_rgb_profile(), dt_colorspaces_create_pq_p3_rgb_profile(), dt_colorspaces_create_pq_rec2020_rgb_profile(), dt_colorspaces_create_srgb_profile(), dt_colorspaces_create_srgb_profile_v4(), dt_colorspaces_create_xyz_profile(), dt_colorspaces_get_matrix_from_input_profile(), dt_colorspaces_get_matrix_from_output_profile(), dt_conf_get_bool(), dt_conf_get_int(), dt_conf_get_string_const(), DT_DEBUG_DEV, dt_print(), DT_PROFILE_GAMUTCHECK, DT_PROFILE_NORMAL, dt_colorspaces_color_profile_t::in_pos, load_profile_from_dir(), dt_colorspaces_t::mode, dt_colorspaces_color_profile_t::name, dt_colorspaces_color_profile_t::out_pos, dt_colorspaces_color_profile_t::profile, dt_colorspaces_t::profiles, Rec709_Primaries, Rec709_Primaries_Prequantized, dt_colorspaces_t::softproof_filename, dt_colorspaces_t::softproof_intent, dt_colorspaces_t::softproof_type, dt_colorspaces_color_profile_t::work_pos, and dt_colorspaces_t::xprofile_lock.
Referenced by dt_init().
| gboolean dt_colorspaces_is_profile_equal | ( | const char * | fullname, |
| const char * | filename | ||
| ) |
check whether filename is the same profil as fullname, this is taking into account that fullname is always the fullpathname to the profile and filename may be a full pathname or just a base name
Definition at line 2262 of file colorspaces.c.
References _colorspaces_get_base_name(), and _colorspaces_is_base_name().
Referenced by _get_profile(), _resolve_work_profile(), and gui_update().
|
static |
Definition at line 2538 of file colorspaces.c.
References i, k, out, and size.
Referenced by dt_colorspaces_conversion_matrices_rgb(), and dt_colorspaces_conversion_matrices_xyz().
convert RGB buffer to CYGM
Definition at line 2726 of file colorspaces.c.
References __OMP_PARALLEL_FOR__, i, k, and out.
Referenced by colorpicker_callback(), and legacy_params().
| void dt_colorspaces_set_display_profile | ( | const dt_colorspaces_color_profile_type_t | profile_type | ) |
trigger updating the display profile from the system settings (x atom, colord, ...)
Definition at line 2091 of file colorspaces.c.
References _update_display_profile(), darktable_t::color_profiles, darktable, darktable_t::develop, DT_COLORSPACE_DISPLAY2, dt_conf_get_string_const(), dt_control_running(), DT_DEBUG_CONTROL, DT_DEBUG_CONTROL_SIGNAL_RAISE, dt_free, dt_print(), DT_SIGNAL_CONTROL_PROFILE_CHANGED, dt_ui_center(), FALSE, darktable_t::gui, IS_NULL_PTR, L, name, profile_changed(), darktable_t::signals, size, TRUE, type, dt_gui_gtk_t::ui, window, dt_colorspaces_t::xprofile_data, dt_colorspaces_t::xprofile_lock, and dt_colorspaces_t::xprofile_size.
Referenced by _configure(), _window_configure(), and dt_gui_gtk_init().
| void dt_colorspaces_transform_rgba8_to_bgra8 | ( | const cmsHTRANSFORM | transform, |
| const uint8_t * | image_in, | ||
| uint8_t * | image_out, | ||
| const int | width, | ||
| const int | height | ||
| ) |
Definition at line 1574 of file colorspaces.c.
References __OMP_PARALLEL_FOR__, height, IS_NULL_PTR, out, transform(), width, and x.
Referenced by _view_image_get_surface_internal(), and dt_mipmap_cache_swap_at_size().
| __DT_CLONE_TARGETS__ void dt_colorspaces_transform_rgba_float_image | ( | const cmsHTRANSFORM | transform, |
| const float * | image_in, | ||
| float * | image_out, | ||
| const int | width, | ||
| const int | height | ||
| ) |
Definition at line 1558 of file colorspaces.c.
References __OMP_PARALLEL_FOR__, dt_colorspaces_transform_rgba_float_row(), height, IS_NULL_PTR, out, transform(), and width.
Referenced by _transform_from_to_rgb_lab_lcms2().
| void dt_colorspaces_transform_rgba_float_row | ( | const cmsHTRANSFORM | transform, |
| const float * | in, | ||
| float * | out, | ||
| const int | width | ||
| ) |
Definition at line 1551 of file colorspaces.c.
References out, transform(), and width.
Referenced by dt_colorspaces_transform_rgba_float_image(), process(), process_lcms2_bm(), and process_lcms2_proper().
| void dt_colorspaces_update_display_transforms | ( | ) |
update the display transforms of srgb and adobergb to the display profile. make sure that darktable.color_profiles->xprofile_lock is held when calling this!
Definition at line 1546 of file colorspaces.c.
References _update_display_transforms(), darktable_t::color_profiles, and darktable.
Referenced by _update_display_profile(), intent_callback(), and profile_callback().
| dt_colorspaces_color_profile_type_t dt_image_find_best_color_profile | ( | int32_t | imgid, |
| cmsHPROFILE * | output, | ||
| gboolean * | new_profile | ||
| ) |
Best effort to find a suitable (input) color profile for a given image, using embedded ICC or EXIF whenever possible. This will also init the profile in the image cache.
| imgid | ID of the picture |
| output | If not NULL, writes the generated color profile into this pointer. |
| new_profile | Will be set to true if a new profile was generated (aka embedded profile) and will need to be freed. If false and output profile is returned, the profile returned already exists on the public list of profiles and should not be freed. |
Definition at line 877 of file colorspaces.c.
References dt_image_t::adobe_XYZ_to_CAM, dt_image_t::colorspace, dt_image_t::d65_color_matrix, darktable, DT_COLORSPACE_ADOBERGB, DT_COLORSPACE_EMBEDDED_ICC, DT_COLORSPACE_EMBEDDED_MATRIX, DT_COLORSPACE_LIN_REC2020, DT_COLORSPACE_LIN_REC709, DT_COLORSPACE_NONE, DT_COLORSPACE_SRGB, DT_COLORSPACE_STANDARD_MATRIX, dt_colorspaces_cicp_to_type(), dt_colorspaces_create_xyzimatrix_profile(), dt_colorspaces_get_profile(), dt_colorspaces_get_rgb_profile_from_mem(), DT_DEBUG_COLORPROFILE, dt_free, DT_IMAGE_4BAYER, dt_image_cache_get(), DT_IMAGE_CACHE_RELAXED, dt_image_cache_write_release(), DT_IMAGE_COLORSPACE_ADOBE_RGB, DT_IMAGE_COLORSPACE_SRGB, dt_image_full_path(), dt_image_is_matrix_correction_supported(), dt_image_is_monochrome(), dt_imageio_avif_read_profile(), dt_imageio_heif_read_profile(), dt_imageio_j2k_read_profile(), dt_imageio_jpeg_read_header(), dt_imageio_jpeg_read_profile(), dt_imageio_png_read_profile(), dt_imageio_tiff_read_profile(), dt_print(), DT_PROFILE_DIRECTION_IN, FALSE, dt_image_t::flags, darktable_t::image_cache, IS_NULL_PTR, PATH_MAX, dt_colorspaces_color_profile_t::profile, dt_image_t::profile, dt_image_t::profile_size, and TRUE.
Referenced by dt_colorspaces_get_embedded_profile(), dt_colorspaces_get_input_profile_from_image(), and reload_defaults().
| void hsl2rgb | ( | dt_aligned_pixel_t | rgb, |
| float | h, | ||
| float | s, | ||
| float | l | ||
| ) |
Definition at line 1455 of file colorspaces.c.
References rgb.
Referenced by commit_params(), hue_conversion(), process(), process_hsl_v1(), process_hsl_v2(), set_RGB_sliders(), update_balance_slider_colors(), update_colorpicker_color(), update_saturation_slider_color(), update_saturation_slider_end_color(), update_saturation_slider_end_color(), and update_saturation_slider_end_color().
|
static |
Definition at line 1655 of file colorspaces.c.
References _ensure_rgb_profile(), _sort_profiles(), dt_colorspaces_color_profile_t::category_pos, dt_colorspaces_color_profile_t::display_pos, DT_COLORSPACE_FILE, dt_colorspaces_get_profile_name(), dt_free, dt_loc_get_datadir(), dt_loc_get_user_config_dir(), dt_read_file(), dt_colorspaces_color_profile_t::filename, dt_colorspaces_color_profile_t::in_pos, IS_NULL_PTR, dt_colorspaces_color_profile_t::name, dt_colorspaces_color_profile_t::out_pos, PATH_MAX, dt_colorspaces_color_profile_t::profile, dt_colorspaces_color_profile_t::type, and dt_colorspaces_color_profile_t::work_pos.
Referenced by dt_colorspaces_init().
| int mat3inv | ( | float *const | dst, |
| const float *const | src | ||
| ) |
Definition at line 191 of file colorspaces.c.
References mat3inv_float().
Referenced by dt_colorspaces_create_xyzimatrix_profile(), dt_imageio_open_rgbe(), and homography().
Definition at line 196 of file colorspaces.c.
| int mat3inv_float | ( | float *const | dst, |
| const float *const | src | ||
| ) |
| void rgb2hsl | ( | const dt_aligned_pixel_t | rgb, |
| float * | h, | ||
| float * | s, | ||
| float * | l | ||
| ) |
common functions to change between colorspaces, used in iop modules
Definition at line 1411 of file colorspaces.c.
References delta, g, r, and rgb.
Referenced by color_picker_apply(), colorpick_callback(), process(), process_hsl_v1(), process_hsl_v2(), and set_HSL_sliders().
|
static |
Definition at line 135 of file colorspaces.c.
Referenced by dt_colorspaces_create_adobergb_profile().
|
static |
Definition at line 111 of file colorspaces.c.
Referenced by dt_colorspaces_create_linear_prophoto_rgb_profile().
|
static |
Definition at line 102 of file colorspaces.c.
Referenced by dt_colorspaces_create_xyzmatrix_profile(), and dt_imageio_open_exr().
|
static |
Definition at line 105 of file colorspaces.c.
Referenced by _colorspaces_create_srgb_profile(), dt_colorspaces_create_adobergb_profile(), dt_colorspaces_create_brg_profile(), dt_colorspaces_create_display_p3_rgb_profile(), dt_colorspaces_create_gamma_rec709_rgb_profile(), dt_colorspaces_create_hlg_p3_rgb_profile(), dt_colorspaces_create_hlg_rec2020_rgb_profile(), dt_colorspaces_create_itur_bt1886_rgb_profile(), dt_colorspaces_create_linear_infrared_profile(), dt_colorspaces_create_linear_rec2020_rgb_profile(), dt_colorspaces_create_linear_rec709_rgb_profile(), dt_colorspaces_create_pq_p3_rgb_profile(), dt_colorspaces_create_pq_rec2020_rgb_profile(), and dt_colorspaces_init().
|
static |
Definition at line 142 of file colorspaces.c.
Referenced by dt_colorspaces_create_display_p3_rgb_profile(), dt_colorspaces_create_hlg_p3_rgb_profile(), and dt_colorspaces_create_pq_p3_rgb_profile().
|
static |
Definition at line 150 of file colorspaces.c.
Referenced by dt_colorspaces_create_linear_prophoto_rgb_profile().
|
static |
Definition at line 121 of file colorspaces.c.
Referenced by dt_colorspaces_create_hlg_rec2020_rgb_profile(), dt_colorspaces_create_linear_rec2020_rgb_profile(), and dt_colorspaces_create_pq_rec2020_rgb_profile().
|
static |
Definition at line 128 of file colorspaces.c.
Referenced by dt_colorspaces_create_gamma_rec709_rgb_profile(), dt_colorspaces_create_itur_bt1886_rgb_profile(), dt_colorspaces_create_linear_rec709_rgb_profile(), and dt_colorspaces_init().
| cmsCIEXYZTRIPLE Rec709_Primaries_Prequantized |
Definition at line 157 of file colorspaces.c.
Referenced by _ensure_rgb_profile(), and dt_colorspaces_init().
|
static |
Definition at line 114 of file colorspaces.c.
Referenced by _colorspaces_create_srgb_profile(), dt_colorspaces_create_brg_profile(), and dt_colorspaces_create_linear_infrared_profile().