From 4984c3c95f18eda44492a2126c9958e447f2cca8 Mon Sep 17 00:00:00 2001 From: msarett Date: Thu, 10 Mar 2016 05:44:43 -0800 Subject: Update Skia's YUV API We should match the recently designed API in SkCodec. https://codereview.chromium.org/1549473003/ This requires changes in Chromium as well. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002 Committed: https://skia.googlesource.com/skia/+/095d31c8a0eeb5d491febf064bc3c8a44e22b94f Review URL: https://codereview.chromium.org/1716523002 --- tests/ImageGeneratorTest.cpp | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) (limited to 'tests/ImageGeneratorTest.cpp') diff --git a/tests/ImageGeneratorTest.cpp b/tests/ImageGeneratorTest.cpp index 7288ecf0a9..3d750b2c73 100644 --- a/tests/ImageGeneratorTest.cpp +++ b/tests/ImageGeneratorTest.cpp @@ -46,27 +46,25 @@ public: DEF_TEST(ImageGenerator, reporter) { MyImageGenerator ig; - SkISize sizes[3]; - sizes[0] = SkISize::Make(200, 200); - sizes[1] = SkISize::Make(100, 100); - sizes[2] = SkISize::Make( 50, 50); - void* planes[3] = { nullptr }; - size_t rowBytes[3] = { 0 }; + SkYUVSizeInfo sizeInfo; + sizeInfo.fSizes[SkYUVSizeInfo::kY] = SkISize::Make(200, 200); + sizeInfo.fSizes[SkYUVSizeInfo::kU] = SkISize::Make(100, 100); + sizeInfo.fSizes[SkYUVSizeInfo::kV] = SkISize::Make( 50, 50); + sizeInfo.fWidthBytes[SkYUVSizeInfo::kY] = 0; + sizeInfo.fWidthBytes[SkYUVSizeInfo::kU] = 0; + sizeInfo.fWidthBytes[SkYUVSizeInfo::kV] = 0; + void* planes[3] = { nullptr }; SkYUVColorSpace colorSpace; // Check that the YUV decoding API does not cause any crashes - ig.getYUV8Planes(sizes, nullptr, nullptr, &colorSpace); - ig.getYUV8Planes(sizes, nullptr, nullptr, nullptr); - ig.getYUV8Planes(sizes, planes, nullptr, nullptr); - ig.getYUV8Planes(sizes, nullptr, rowBytes, nullptr); - ig.getYUV8Planes(sizes, planes, rowBytes, nullptr); - ig.getYUV8Planes(sizes, planes, rowBytes, &colorSpace); - + ig.queryYUV8(&sizeInfo, nullptr); + ig.queryYUV8(&sizeInfo, &colorSpace); + sizeInfo.fWidthBytes[SkYUVSizeInfo::kY] = 250; + sizeInfo.fWidthBytes[SkYUVSizeInfo::kU] = 250; + sizeInfo.fWidthBytes[SkYUVSizeInfo::kV] = 250; int dummy; - planes[0] = planes[1] = planes[2] = &dummy; - rowBytes[0] = rowBytes[1] = rowBytes[2] = 250; - - ig.getYUV8Planes(sizes, planes, rowBytes, &colorSpace); + planes[SkYUVSizeInfo::kY] = planes[SkYUVSizeInfo::kU] = planes[SkYUVSizeInfo::kV] = &dummy; + ig.getYUV8Planes(sizeInfo, planes); // Suppressed due to https://code.google.com/p/skia/issues/detail?id=4339 if (false) { -- cgit v1.2.3