6b622963a0
This reverts commit5f7b5e3624
. Reason for revert: Codec CL has re-landed. Original change's description: > Revert "Stop conflating F16 with linear gamma" > > This reverts commitd1589c7213
. > > Reason for revert: Depends on skcms CL that's been reverted. > > Original change's description: > > Stop conflating F16 with linear gamma > > > > Note to self: I debugged this, realized that the codecs > > need to handle A2B -> XYZ, then realized that I just need > > to wait for https://skia-review.googlesource.com/c/skia/+/136062 > > > > Bug: skia: > > Change-Id: I594c22076feb3700b8a40c471a541fef5ff4e13e > > Reviewed-on: https://skia-review.googlesource.com/137587 > > Commit-Queue: Brian Osman <brianosman@google.com> > > Reviewed-by: Mike Klein <mtklein@google.com> > > TBR=mtklein@google.com,brianosman@google.com > > Change-Id: I6dca583697c8efd2563d30cb7ab9ef505b6903ae > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/148860 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> TBR=mtklein@google.com,brianosman@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: Iee66531049843758e7ed4130b99d8df6a553d805 Reviewed-on: https://skia-review.googlesource.com/149700 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
44 lines
1.3 KiB
C++
44 lines
1.3 KiB
C++
/*
|
|
* Copyright 2017 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#include "SkAndroidCodec.h"
|
|
#include "SkBitmap.h"
|
|
#include "SkColor.h"
|
|
#include "SkColorSpace.h"
|
|
#include "SkData.h"
|
|
#include "SkEncodedImageFormat.h"
|
|
#include "SkImageEncoder.h"
|
|
#include "SkImageInfo.h"
|
|
#include "SkStream.h"
|
|
#include "Test.h"
|
|
|
|
#include <memory>
|
|
#include <utility>
|
|
|
|
DEF_TEST(Codec_recommendedF16, r) {
|
|
// Encode an F16 bitmap. SkEncodeImage will encode this to a true-color PNG
|
|
// with a bit depth of 16. SkAndroidCodec should always recommend F16 for
|
|
// such a PNG.
|
|
SkBitmap bm;
|
|
bm.allocPixels(SkImageInfo::Make(10, 10, kRGBA_F16_SkColorType,
|
|
kPremul_SkAlphaType, SkColorSpace::MakeSRGB()));
|
|
// What is drawn is not important.
|
|
bm.eraseColor(SK_ColorBLUE);
|
|
|
|
SkDynamicMemoryWStream wstream;
|
|
REPORTER_ASSERT(r, SkEncodeImage(&wstream, bm, SkEncodedImageFormat::kPNG, 100));
|
|
auto data = wstream.detachAsData();
|
|
auto androidCodec = SkAndroidCodec::MakeFromData(std::move(data));
|
|
if (!androidCodec) {
|
|
ERRORF(r, "Failed to create SkAndroidCodec");
|
|
return;
|
|
}
|
|
|
|
REPORTER_ASSERT(r, androidCodec->computeOutputColorType(kN32_SkColorType)
|
|
== kRGBA_F16_SkColorType);
|
|
}
|