diff options
author | Mike Klein <mtklein@chromium.org> | 2018-06-19 16:00:40 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-06-19 21:15:18 +0000 |
commit | 0e4041f5c962dd16c4a69cbd9ff35685e9519ff3 (patch) | |
tree | 09b89a6f52f52082ee74d2f596f42750027678e8 /bench | |
parent | c069a57301a468dbc45f3f3775b623e5532f9398 (diff) |
update software DM/nanobench configs for color testing
- Rename 'srgbnl' to just 'srgb'.
- Add 'narrow' and 'enarrow' for testing a gamut narrower than sRGB.
Tested by running xfermodes2 in DM... all look different, what a mess.
I also ran a few nanobenches and they seemed somewhat sane.
Change-Id: Iacdc391dc0eef4153a76f5b4f78d72c57a4371ee
Reviewed-on: https://skia-review.googlesource.com/135871
Commit-Queue: Mike Klein <mtklein@chromium.org>
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Diffstat (limited to 'bench')
-rw-r--r-- | bench/nanobench.cpp | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp index f77299fece..68923d1c3e 100644 --- a/bench/nanobench.cpp +++ b/bench/nanobench.cpp @@ -27,6 +27,7 @@ #include "SkBitmapRegionDecoder.h" #include "SkCanvas.h" #include "SkCodec.h" +#include "SkColorSpacePriv.h" #include "SkCommonFlags.h" #include "SkCommonFlagsConfig.h" #include "SkCommonFlagsGpu.h" @@ -472,15 +473,23 @@ static void create_config(const SkCommandLineConfig* config, SkTArray<Config>* c CPU_CONFIG(nonrendering, kNonRendering_Backend, kUnknown_SkColorType, kUnpremul_SkAlphaType, nullptr) - CPU_CONFIG(a8, kRaster_Backend, - kAlpha_8_SkColorType, kPremul_SkAlphaType, nullptr) - CPU_CONFIG(8888, kRaster_Backend, - kN32_SkColorType, kPremul_SkAlphaType, nullptr) - CPU_CONFIG(565, kRaster_Backend, - kRGB_565_SkColorType, kOpaque_SkAlphaType, nullptr) - auto srgbLinearColorSpace = SkColorSpace::MakeSRGBLinear(); - CPU_CONFIG(f16, kRaster_Backend, - kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgbLinearColorSpace) + CPU_CONFIG(a8, kRaster_Backend, kAlpha_8_SkColorType, kPremul_SkAlphaType, nullptr) + CPU_CONFIG(8888, kRaster_Backend, kN32_SkColorType, kPremul_SkAlphaType, nullptr) + CPU_CONFIG(565, kRaster_Backend, kRGB_565_SkColorType, kOpaque_SkAlphaType, nullptr) + + // 'narrow' has a gamut narrower than sRGB, and different transfer function. + SkMatrix44 narrow_gamut(SkMatrix44::kUninitialized_Constructor); + narrow_gamut.set3x3RowMajorf(gNarrow_toXYZD50); + + auto narrow = SkColorSpace::MakeRGB(k2Dot2Curve_SkGammaNamed, narrow_gamut), + srgb = SkColorSpace::MakeSRGB(), + srgbLinear = SkColorSpace::MakeSRGBLinear(); + + CPU_CONFIG( f16, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgbLinear) + CPU_CONFIG( srgb, kRaster_Backend, kRGBA_8888_SkColorType, kPremul_SkAlphaType, srgb ) + CPU_CONFIG( esrgb, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, srgb ) + CPU_CONFIG( narrow, kRaster_Backend, kRGBA_8888_SkColorType, kPremul_SkAlphaType, narrow ) + CPU_CONFIG(enarrow, kRaster_Backend, kRGBA_F16_SkColorType, kPremul_SkAlphaType, narrow ) #undef CPU_CONFIG |