Commit ea2e8765 authored by Sasha McIntosh's avatar Sasha McIntosh Committed by Commit Bot

blink: Allow JPEG YUV decoding (flag protected).

Features with "test" status are enabled in content shell web tests by default.
This change makes the JPEG YUV decoding feature a "test" feature and updates
associated tests.

Bug: 919627
Change-Id: Id09d8592a74b06320be684014adca1f333ee6781
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1798523
Commit-Queue: Sasha McIntosh <sashamcintosh@chromium.org>
Reviewed-by: default avatarLeon Scroggins <scroggo@chromium.org>
Reviewed-by: default avatarStephen Chenney <schenney@chromium.org>
Cr-Commit-Position: refs/heads/master@{#727271}
parent 7d1251ee
......@@ -49,10 +49,13 @@ static const size_t kLargeEnoughSize = 1000 * 1000;
namespace {
std::unique_ptr<JPEGImageDecoder> CreateJPEGDecoder(size_t max_decoded_bytes) {
std::unique_ptr<JPEGImageDecoder> CreateJPEGDecoder(
size_t max_decoded_bytes,
ImageDecoder::OverrideAllowDecodeToYuv decodeToYUV =
ImageDecoder::OverrideAllowDecodeToYuv::kDeny) {
return std::make_unique<JPEGImageDecoder>(
ImageDecoder::kAlphaNotPremultiplied, ColorBehavior::TransformToSRGB(),
max_decoded_bytes, ImageDecoder::OverrideAllowDecodeToYuv::kDefault);
max_decoded_bytes, decodeToYUV);
}
std::unique_ptr<ImageDecoder> CreateJPEGDecoder() {
......@@ -87,8 +90,8 @@ void ReadYUV(size_t max_decoded_bytes,
scoped_refptr<SharedBuffer> data = ReadFile(image_file_path);
ASSERT_TRUE(data);
std::unique_ptr<JPEGImageDecoder> decoder =
CreateJPEGDecoder(max_decoded_bytes);
std::unique_ptr<JPEGImageDecoder> decoder = CreateJPEGDecoder(
max_decoded_bytes, ImageDecoder::OverrideAllowDecodeToYuv::kDefault);
decoder->SetDecodeToYuvForTesting(true);
decoder->SetData(data.get(), true);
......@@ -274,7 +277,8 @@ TEST(JPEGImageDecoderTest, yuv) {
scoped_refptr<SharedBuffer> data = ReadFile(jpeg_file);
ASSERT_TRUE(data);
std::unique_ptr<JPEGImageDecoder> decoder = CreateJPEGDecoder(230 * 230 * 4);
std::unique_ptr<JPEGImageDecoder> decoder = CreateJPEGDecoder(
230 * 230 * 4, ImageDecoder::OverrideAllowDecodeToYuv::kDefault);
decoder->SetDecodeToYuvForTesting(true);
decoder->SetData(data.get(), true);
......
......@@ -570,6 +570,7 @@
},
{
name: "DecodeJpeg420ImagesToYUV",
status: "test",
},
{
name: "DecodeLossyWebPImagesToYUV",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment