Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Issue 1862053002: Reland: [qcms] Fix build_output_lut to return correct data for parametric curves (Closed)

Created:
4 years, 8 months ago by radu.velea
Modified:
4 years, 8 months ago
Reviewers:
Noel Gordon
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[qcms] Fix build_output_lut to return correct data for parametric curves build_output_lut() does not invert a parametric gamma curve when computing the output curve data. The effect has not been visible since Chrome only uses the output gamma values from the precache table (which is inverted). Make build_output_lut() return inverted data for parametric gamma curves. Add a test to write the inverted data, and the output of LCMS function DefaultEvalParametricFn, to a file for comparison. For now the size of input and output gamma table for parametric curves is hard-coded to 256; assert this in the test code. See compute_curve_gamma_table_type_parametric for details. Future implementations might return an arbitrary-sized table. BUG=600338 Committed: https://crrev.com/a89370950f514a3df77ed84240d4b8e3abbee801 Cr-Commit-Position: refs/heads/master@{#389754} Committed: https://crrev.com/3a4a913c1de915ef228a35b4f85603662719c49f Cr-Commit-Position: refs/heads/master@{#389866} Committed: https://crrev.com/555dfdfcd56ae8ef91637e4b0827970be7609059 Cr-Commit-Position: refs/heads/master@{#389964}

Patch Set 1 #

Patch Set 2 : Use invert_lut on the values returned by build_output_lut for parametric curves #

Patch Set 3 : whitespace #

Patch Set 4 : Retrieved input gamma for parametric curves. Compute best gamma from data set #

Total comments: 1

Patch Set 5 : Whitespace and comments #

Total comments: 2

Patch Set 6 : Rebase and remove WebKit/LayoutTests/whitespace.txt #

Total comments: 33

Patch Set 7 : Updated Makefile & comments. Cleanedup qcms_test_output_trc.c #

Total comments: 14

Patch Set 8 : Removed gamma estimator #

Total comments: 12

Patch Set 9 : Removed precached code and added assertions #

Total comments: 4

Patch Set 10 : Removed unused variable #

Patch Set 11 : Removed redundant comment #

Total comments: 4

Patch Set 12 : Nits #

Patch Set 13 : Changed output message #

Patch Set 14 : Cast unsigned to int before negating to remove warning on windows #

Patch Set 15 : Remove more warnings #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+506 lines, -15 lines) Patch
M third_party/qcms/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/qcms/README.chromium View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/qcms/qcms.gyp View 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/qcms/src/tests/Makefile View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M third_party/qcms/src/tests/qcms_test_main.c View 1 2 3 4 3 chunks +4 lines, -12 lines 0 comments Download
A third_party/qcms/src/tests/qcms_test_output_trc.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +197 lines, -0 lines 1 comment Download
M third_party/qcms/src/tests/qcms_test_util.h View 1 chunk +1 line, -0 lines 0 comments Download
A third_party/qcms/src/tests/qcms_test_util.c View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +280 lines, -0 lines 0 comments Download
M third_party/qcms/src/transform_util.c View 1 2 3 4 5 6 7 2 chunks +17 lines, -2 lines 0 comments Download

Messages

Total messages: 73 (33 generated)
radu.velea
https://codereview.chromium.org/1862053002/diff/60001/third_party/qcms/src/tests/qcms_test_main.c File third_party/qcms/src/tests/qcms_test_main.c (left): https://codereview.chromium.org/1862053002/diff/60001/third_party/qcms/src/tests/qcms_test_main.c#oldcode76 third_party/qcms/src/tests/qcms_test_main.c:76: void generate_source_uint8_t(unsigned char *src, const size_t length, const size_t ...
4 years, 8 months ago (2016-04-15 08:42:35 UTC) #3
Noel Gordon
https://codereview.chromium.org/1862053002/diff/80001/third_party/WebKit/LayoutTests/whitespace.txt File third_party/WebKit/LayoutTests/whitespace.txt (right): https://codereview.chromium.org/1862053002/diff/80001/third_party/WebKit/LayoutTests/whitespace.txt#newcode19 third_party/WebKit/LayoutTests/whitespace.txt:19: Still the data is inacurate! After https://bugs.chromium.org/p/chromium/issues/detail?id=597181 we don't ...
4 years, 8 months ago (2016-04-18 03:27:37 UTC) #4
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/80001
4 years, 8 months ago (2016-04-18 03:33:23 UTC) #6
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: ios_dbg_simulator_gn on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator_gn/builds/20475) ios_dbg_simulator_ninja on ...
4 years, 8 months ago (2016-04-18 03:35:34 UTC) #8
radu.velea
rebased https://codereview.chromium.org/1862053002/diff/80001/third_party/WebKit/LayoutTests/whitespace.txt File third_party/WebKit/LayoutTests/whitespace.txt (right): https://codereview.chromium.org/1862053002/diff/80001/third_party/WebKit/LayoutTests/whitespace.txt#newcode19 third_party/WebKit/LayoutTests/whitespace.txt:19: Still the data is inacurate! On 2016/04/18 03:27:36, ...
4 years, 8 months ago (2016-04-18 10:31:11 UTC) #9
Noel Gordon
https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/Makefile File third_party/qcms/src/tests/Makefile (right): https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/Makefile#newcode12 third_party/qcms/src/tests/Makefile:12: qcms_tests: qcms_test_main.c qcms_test_munsell.c qcms_test_tetra_clut_rgba.c qcms_test_internal_srgb.c qcms_test_ntsc_gamut.c qcms_test_output_trc.c \ Would ...
4 years, 8 months ago (2016-04-19 00:57:46 UTC) #10
Noel Gordon
https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/qcms_test_util.c File third_party/qcms/src/tests/qcms_test_util.c (right): https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/qcms_test_util.c#newcode12 third_party/qcms/src/tests/qcms_test_util.c:12: void generate_source_uint8_t(unsigned char *src, const size_t length, const size_t ...
4 years, 8 months ago (2016-04-19 01:06:01 UTC) #11
Noel Gordon
https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode22 third_party/qcms/src/tests/qcms_test_output_trc.c:22: qcms_format_type format = {0, 2}; // RGBA format: where ...
4 years, 8 months ago (2016-04-19 01:26:06 UTC) #12
radu.velea
https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/Makefile File third_party/qcms/src/tests/Makefile (right): https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/Makefile#newcode12 third_party/qcms/src/tests/Makefile:12: qcms_tests: qcms_test_main.c qcms_test_munsell.c qcms_test_tetra_clut_rgba.c qcms_test_internal_srgb.c qcms_test_ntsc_gamut.c qcms_test_output_trc.c \ On ...
4 years, 8 months ago (2016-04-19 08:42:07 UTC) #13
Noel Gordon
On 2016/04/19 08:42:07, radu.velea wrote: > https://codereview.chromium.org/1862053002/diff/100001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode232 > third_party/qcms/src/tests/qcms_test_output_trc.c:232: printf("Computed gamma > from LUTs:\nInput = ...
4 years, 8 months ago (2016-04-21 05:36:16 UTC) #14
Noel Gordon
https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode32 third_party/qcms/src/tests/qcms_test_output_trc.c:32: if (precache) { Why is the precache relevant to ...
4 years, 8 months ago (2016-04-21 06:01:54 UTC) #15
radu.velea
https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode32 third_party/qcms/src/tests/qcms_test_output_trc.c:32: if (precache) { On 2016/04/21 06:01:53, noel gordon wrote: ...
4 years, 8 months ago (2016-04-21 07:13:45 UTC) #16
Noel Gordon
On 2016/04/21 07:13:45, radu.velea wrote: > https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c > File third_party/qcms/src/tests/qcms_test_output_trc.c (right): > > https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode32 > ...
4 years, 8 months ago (2016-04-26 02:35:39 UTC) #17
Noel Gordon
https://codereview.chromium.org/1862053002/diff/140001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/140001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode14 third_party/qcms/src/tests/qcms_test_output_trc.c:14: #define MAX_FLOAT_ERROR 0.000001f MAX_FLOAT_ERROR is no longer used, right? ...
4 years, 8 months ago (2016-04-26 02:46:39 UTC) #18
radu.velea
https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/120001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode138 third_party/qcms/src/tests/qcms_test_output_trc.c:138: if (gamma_table_size != gamma_table_size_precache) { On 2016/04/21 06:01:53, noel ...
4 years, 8 months ago (2016-04-26 10:23:19 UTC) #29
Noel Gordon
https://codereview.chromium.org/1862053002/diff/160001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/160001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode123 third_party/qcms/src/tests/qcms_test_output_trc.c:123: if (err != 0) { You can remove this ...
4 years, 8 months ago (2016-04-26 10:32:16 UTC) #31
radu.velea
https://codereview.chromium.org/1862053002/diff/160001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/160001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode123 third_party/qcms/src/tests/qcms_test_output_trc.c:123: if (err != 0) { On 2016/04/26 10:32:15, noel ...
4 years, 8 months ago (2016-04-26 10:36:49 UTC) #32
Noel Gordon
Final nits. https://codereview.chromium.org/1862053002/diff/200001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/200001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode44 third_party/qcms/src/tests/qcms_test_output_trc.c:44: *table = malloc(*size * sizeof(uint16_t) * 4); ...
4 years, 8 months ago (2016-04-26 10:44:19 UTC) #33
radu.velea
https://codereview.chromium.org/1862053002/diff/200001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/200001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode44 third_party/qcms/src/tests/qcms_test_output_trc.c:44: *table = malloc(*size * sizeof(uint16_t) * 4); On 2016/04/26 ...
4 years, 8 months ago (2016-04-26 10:49:16 UTC) #35
Noel Gordon
LGTM.
4 years, 8 months ago (2016-04-26 11:08:55 UTC) #37
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/240001
4 years, 8 months ago (2016-04-26 11:09:34 UTC) #39
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 8 months ago (2016-04-26 12:24:44 UTC) #41
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/240001
4 years, 8 months ago (2016-04-26 12:32:27 UTC) #43
commit-bot: I haz the power
Committed patchset #13 (id:240001)
4 years, 8 months ago (2016-04-26 12:37:05 UTC) #45
commit-bot: I haz the power
Patchset 13 (id:??) landed as https://crrev.com/a89370950f514a3df77ed84240d4b8e3abbee801 Cr-Commit-Position: refs/heads/master@{#389754}
4 years, 8 months ago (2016-04-26 12:38:39 UTC) #47
Marc Treib
A revert of this CL (patchset #13 id:240001) has been created in https://codereview.chromium.org/1922113002/ by treib@chromium.org. ...
4 years, 8 months ago (2016-04-26 13:06:06 UTC) #48
Noel Gordon
On 2016/04/26 13:06:06, Marc Treib wrote: > A revert of this CL (patchset #13 id:240001) ...
4 years, 8 months ago (2016-04-26 14:15:20 UTC) #49
radu.velea
On 2016/04/26 14:15:20, noel gordon wrote: > On 2016/04/26 13:06:06, Marc Treib wrote: > > ...
4 years, 8 months ago (2016-04-26 16:26:48 UTC) #51
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/260001
4 years, 8 months ago (2016-04-26 16:27:23 UTC) #54
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/60420)
4 years, 8 months ago (2016-04-26 17:58:12 UTC) #56
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/260001
4 years, 8 months ago (2016-04-26 20:06:48 UTC) #58
commit-bot: I haz the power
Committed patchset #14 (id:260001)
4 years, 8 months ago (2016-04-26 20:11:47 UTC) #60
commit-bot: I haz the power
Patchset 14 (id:??) landed as https://crrev.com/3a4a913c1de915ef228a35b4f85603662719c49f Cr-Commit-Position: refs/heads/master@{#389866}
4 years, 8 months ago (2016-04-26 20:12:56 UTC) #62
Charlie Reis
A revert of this CL (patchset #14 id:260001) has been created in https://codereview.chromium.org/1920253003/ by creis@chromium.org. ...
4 years, 8 months ago (2016-04-26 20:54:58 UTC) #63
Charlie Reis
On 2016/04/26 20:54:58, Charlie Reis wrote: > A revert of this CL (patchset #14 id:260001) ...
4 years, 8 months ago (2016-04-26 20:56:54 UTC) #64
Noel Gordon
> Unclear to me why the try bots aren't catching these compile errors. Unclear to ...
4 years, 8 months ago (2016-04-27 00:06:18 UTC) #65
Noel Gordon
https://codereview.chromium.org/1862053002/diff/280001/third_party/qcms/src/tests/qcms_test_output_trc.c File third_party/qcms/src/tests/qcms_test_output_trc.c (right): https://codereview.chromium.org/1862053002/diff/280001/third_party/qcms/src/tests/qcms_test_output_trc.c#newcode100 third_party/qcms/src/tests/qcms_test_output_trc.c:100: size_t i; LGTM based on my local windows compile ...
4 years, 8 months ago (2016-04-27 00:08:08 UTC) #67
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1862053002/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1862053002/280001
4 years, 8 months ago (2016-04-27 00:09:30 UTC) #69
commit-bot: I haz the power
Committed patchset #15 (id:280001)
4 years, 8 months ago (2016-04-27 01:32:53 UTC) #71
commit-bot: I haz the power
4 years, 8 months ago (2016-04-27 01:34:04 UTC) #73
Message was sent while issue was closed.
Patchset 15 (id:??) landed as
https://crrev.com/555dfdfcd56ae8ef91637e4b0827970be7609059
Cr-Commit-Position: refs/heads/master@{#389964}

Powered by Google App Engine
This is Rietveld 408576698