Commit Graph

3249 Commits

Author SHA1 Message Date
cblume
5b9ad7620b Adding anisotropic mipmap levels to SkMipMap.
Adding 1x2, 1x3, 2x1, 3x1 filters to SkMipMap and enabling SkMipMap to generate anisotropic mip levels.

BUG=590804
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750303002

Review URL: https://codereview.chromium.org/1750303002
2016-03-01 13:54:30 -08:00
brianosman
744898aa48 Revert of Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pix… (patchset #1 id:1 of https://codereview.chromium.org/1750383002/ )
Reason for revert:
GM breakage. Changes to SkGr.cpp appear to be altering behavior on a variety of tests. Debugging...

Original issue's description:
> Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pixel config, which makes many things "just work".
>
> Added (color=8888|f16|srgb) option to gpu configurations, along with gpuf16, gpusrgb, and anglesrgb predefined configs. Runs the gpu backend in gamma-correct mode (with either FP16 linear or sRGB 8888 frambuffers).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750383002
>
> Committed: https://skia.googlesource.com/skia/+/a6f58194733c1c50e4fe5f98585e42344f29b6f0

TBR=mtklein@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1755553003
2016-03-01 13:44:28 -08:00
msarett
b9e56c1ee6 Fix FrontBufferedStreamTest
TBR=scroggo@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1747423002

Review URL: https://codereview.chromium.org/1747423002
2016-03-01 13:29:15 -08:00
brianosman
a6f5819473 Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pixel config, which makes many things "just work".
Added (color=8888|f16|srgb) option to gpu configurations, along with gpuf16, gpusrgb, and anglesrgb predefined configs. Runs the gpu backend in gamma-correct mode (with either FP16 linear or sRGB 8888 frambuffers).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750383002

Review URL: https://codereview.chromium.org/1750383002
2016-03-01 12:53:06 -08:00
msarett
7f7ec206de Fix bug in SkGifCodec / Switch SkImageDec tests to use Codec
SkImageDecoder is still used throughout tests, tools, gms etc.
Deleting it from tests is an easy first step.

Bonus is that we add tests of SkCodec.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1733863003

Review URL: https://codereview.chromium.org/1733863003
2016-03-01 12:12:27 -08:00
reed
bb7b043b2d isolate sk_sp from larger cl
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1752683002

Review URL: https://codereview.chromium.org/1752683002
2016-03-01 07:28:51 -08:00
brianosman
e9c8442bfc Revert of Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pix… (patchset #3 id:40001 of https://codereview.chromium.org/1746253002/ )
Reason for revert:
Fixing the build.

Original issue's description:
> Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pixel config, which makes many things "just work".
>
> Added (color=8888|f16|srgb) option to gpu configurations, along with gpuf16, gpusrgb, and anglesrgb predefined configs. Runs the gpu backend in gamma-correct mode (with either FP16 linear or sRGB 8888 frambuffers).
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1746253002
>
> Committed: https://skia.googlesource.com/skia/+/eef980270d3385fee340eb1633962fe3ba8b7132

TBR=mtklein@google.com,egdaniel@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1748823002
2016-02-29 13:55:40 -08:00
brianosman
eef980270d Progress on gamma-correctness in the GPU backend. Fixed conversion of color and profile type to pixel config, which makes many things "just work".
Added (color=8888|f16|srgb) option to gpu configurations, along with gpuf16, gpusrgb, and anglesrgb predefined configs. Runs the gpu backend in gamma-correct mode (with either FP16 linear or sRGB 8888 frambuffers).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1746253002

Review URL: https://codereview.chromium.org/1746253002
2016-02-29 13:39:09 -08:00
bsalomon
84a4e5a8d6 Remove internal calls to SkImage::getTexture
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744243002

Review URL: https://codereview.chromium.org/1744243002
2016-02-29 11:41:52 -08:00
yujieqin
f236ee4e44 Enable RAW codec for Windows
* Fix the exception catching
* Set preprocessor differently for MSVC

BUG=skia:4889(b/26958348)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1738913002

Committed: https://skia.googlesource.com/skia/+/474e4c3dd28b67f590851321f15d9983ef7fd031

Review URL: https://codereview.chromium.org/1738913002
2016-02-29 07:14:42 -08:00
bsalomon
b2c0133caf When a surface is backed by an external render target force a copy on image snap
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1694943002

Review URL: https://codereview.chromium.org/1694943002
2016-02-26 10:37:26 -08:00
halcanary
d5722a4a1b SkPDF/Test: detailed error messages in PDFDeflateWStreamTest
BUG=skia:5009
TBR=

Review URL: https://codereview.chromium.org/1727153005
2016-02-26 08:29:25 -08:00
egdaniel
a705641cf6 Fix createTexture calls in vk tests
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1737343002

Review URL: https://codereview.chromium.org/1737343002
2016-02-25 13:47:45 -08:00
bungeman
47a1e96b95 Deduplicate axis value resolving code.
The code was originally written for Android, but is now implemented
more generally by the FreeType scanner to be shared between all
FreeType backed typefaces. This removes the now duplicate code in the
Android font manager and uses the shared code instead.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726213004

Review URL: https://codereview.chromium.org/1726213004
2016-02-25 11:20:01 -08:00
benjaminwagner
f6bfccd562 Cleanups related to SkFixed.
This CL relands https://codereview.chromium.org/1683743005/ with two fixes:
  - Removing the test for vertical text. Vertical text doesn't work on Windows and breakText isn't supported for non-trivial text.
  - Omit PaintBreakTextTest in Google3 because we don't have the correct font setup yet.

Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.

Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.

Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005

Committed: https://skia.googlesource.com/skia/+/7ea5cb18389db11a94175de95c9db2b44972630c

patch from issue 1683743005 at patchset 120001 (http://crrev.com/1683743005#ps120001)

Review URL: https://codereview.chromium.org/1739453002
2016-02-25 10:28:11 -08:00
bsalomon
5ec26ae9bf Move Budgeted enum out of SkSurface, use in GrTextureProvider
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
DOCS_PREVIEW= https://skia.org/?cl=1728093005

Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot

Review URL: https://codereview.chromium.org/1728093005
2016-02-25 08:33:02 -08:00
bsalomon
bd500f09ce Revert of Move Budgeted enum out of SkSurface, use in GrTextureProvider (patchset #6 id:100001 of https://codereview.chromium.org/1728093005/ )
Reason for revert:
Need workaround for chrome to build

Original issue's description:
> Move Budgeted enum out of SkSurface, use in GrTextureProvider
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
> DOCS_PREVIEW= https://skia.org/?cl=1728093005
>
> Committed: https://skia.googlesource.com/skia/+/57599fe6c0336feaeeeb9b1996e77b70219b483c

TBR=reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1734043002
2016-02-25 06:52:12 -08:00
bsalomon
57599fe6c0 Move Budgeted enum out of SkSurface, use in GrTextureProvider
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1728093005
DOCS_PREVIEW= https://skia.org/?cl=1728093005

Review URL: https://codereview.chromium.org/1728093005
2016-02-25 06:33:27 -08:00
kkinnunen
45c2c8166b Implement support for using GL ES 3.0 with command buffer
Adds a new 'api': --config gpu(api=commandbuffer3) for dm/nanobench.

BUG=skia:4943
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684413003

Review URL: https://codereview.chromium.org/1684413003
2016-02-25 02:03:43 -08:00
halcanary
7d57124a2a Unit Tests: eliminate stray SkDebugf()s.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1733113002

Review URL: https://codereview.chromium.org/1733113002
2016-02-24 17:59:16 -08:00
halcanary
8e9f5e39d7 SkPDF: fix scalar serialization
BUG=skia:4868
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720863003

Review URL: https://codereview.chromium.org/1720863003
2016-02-24 15:46:46 -08:00
caryclark
d78c088b61 fix path ops fuzz bug
If one path is empty and the other has extreme values, the
intermediate coincident paths cannot be resolved, but triggers
an assert that a data structure unexpectedly has zero-length.

Tunnel this failure back up to the top and return that the
entire path op fails.

A future optimization could detect the empty path and avoid
this, allowing the op to succeed -- not sure that it's worth
the additional logic though.

TBR=reed@google.com
BUG=535151
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1730293002

Review URL: https://codereview.chromium.org/1730293002
2016-02-24 09:03:07 -08:00
benjaminwagner
c2d35d8513 Revert of Simple cleanups related to SkFixed. (patchset #4 id:120001 of https://codereview.chromium.org/1683743005/ )
Reason for revert:
New test is failing on Windows.

Original issue's description:
> Cleanups related to SkFixed.
>
> Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.
>
> Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.
>
> Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.
>
> BUG=skia:4632
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005
>
> Committed: https://skia.googlesource.com/skia/+/7ea5cb18389db11a94175de95c9db2b44972630c

TBR=mtklein@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4632

Review URL: https://codereview.chromium.org/1724283003
2016-02-24 08:29:11 -08:00
benjaminwagner
7ea5cb1838 Cleanups related to SkFixed.
Remove SK_FixedNaN. It does not seem to be supported or used anywhere in Skia, Chromium, Android, or Google3, (except accidentally by TwoPtRadial::kDontDrawT). I think supporting it would erase any benefit of SkFixed over float.

Remove SkBitmapFilter::lookup. It does not appear to be used anywhere in Skia, Chromium, Android, or Google3.

Fix a bug in SkPaint::breakText that limited it to ~5kB of text. Now it can handle more than 1GB.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683743005

Review URL: https://codereview.chromium.org/1683743005
2016-02-24 06:51:52 -08:00
fmalita
ca058f57a3 Retire SkShader::kSupports4f_Flag
No longer used except in one test.

Introduce kPrefers4f_Flag instead.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726983002

Review URL: https://codereview.chromium.org/1726983002
2016-02-23 19:02:20 -08:00
fmalita
55430a6207 Update 4f linear gradient selection heuristic
Use the 4f context when

  * dest type is 4f
  * there's no perpective

Keeping the define and testing flag overrides for now.

R=reed@google.com,herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1725793003

Review URL: https://codereview.chromium.org/1725793003
2016-02-23 13:26:28 -08:00
fmalita
d0c4e092d5 Add dest type hint to SkShader::ContextRec
Let SkBlitter decide which dst type is optimal (PMColor vs PM4f), and
pass that info to shaders.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1724503002

Review URL: https://codereview.chromium.org/1724503002
2016-02-22 17:19:04 -08:00
herb
a856e25ba1 Better encapsulation and vector calling convention.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1723683002

Review URL: https://codereview.chromium.org/1723683002
2016-02-22 14:48:22 -08:00
bsalomon
f47b9a3b88 Allow client to force an SkImage snapshot to be unique (and uniquely own its backing store).
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686163002

Review URL: https://codereview.chromium.org/1686163002
2016-02-22 11:02:58 -08:00
fmalita
8d9f2e474a Add ContextRec param to SkShader::contextSize()
To facilitate upcoming context selection changes.

R=reed@google.com,mtklein@google.com,herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720933002

Review URL: https://codereview.chromium.org/1720933002
2016-02-22 10:39:41 -08:00
Greg Daniel
164a9f061c Add vulkan files into skia repo. This is an incomplete backend with only partial functionality at this time.
R=robertphillips@google.com
TBR=bsalomon@google.com

BUG=skia:4955
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1718693002

Committed: https://skia.googlesource.com/skia/+/48cf268defad66f58f1aa03b4835e5583be96b2f

Review URL: https://codereview.chromium.org/1718693002
2016-02-22 09:56:40 -05:00
egdaniel
ad3a13c4c3 Revert of Add vulkan files into skia repo. (patchset #2 id:20001 of https://codereview.chromium.org/1718693002/ )
Reason for revert:
breaking builds

Original issue's description:
> Add vulkan files into skia repo. This is an incomplete backend with only partial functionality at this time.
>
> R=robertphillips@google.com
> TBR=bsalomon@google.com
>
> BUG=skia:4955
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1718693002
>
> Committed: https://skia.googlesource.com/skia/+/48cf268defad66f58f1aa03b4835e5583be96b2f

TBR=robertphillips@google.com,bsalomon@google.com,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4955

Review URL: https://codereview.chromium.org/1723503002
2016-02-22 06:17:53 -08:00
Greg Daniel
48cf268def Add vulkan files into skia repo. This is an incomplete backend with only partial functionality at this time.
R=robertphillips@google.com
TBR=bsalomon@google.com

BUG=skia:4955
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1718693002

Review URL: https://codereview.chromium.org/1718693002
2016-02-22 09:11:32 -05:00
mtklein
03762fea75 fix race: this kCacheSize is probably not meant to be static
TSAN sees us racing to intialize the static const kCacheSize.

This static const value depends on the runtime value image->getSize(), so there
is a race to set it.  I think this is unintentionally copy-paste from the other
tests that use a constant kCacheSize.  It's weird to intialize a constant based
on the first call to test_internal_purge(), though luckily we're always calling
it with same sized images today.

See these TSAN failures:
    https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/4937
    https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/4940/steps/dm/logs/stdio

TBR=robertphillips@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720743002

Review URL: https://codereview.chromium.org/1720743002
2016-02-21 13:36:50 -08:00
mtklein
7c249e5319 SkNx: kth<...>() -> [...]
Just some syntax cleanup.  No real change: kth<...>() was calling [...] already.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1714363002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1714363002
2016-02-21 10:54:19 -08:00
herb
f5d4746ad7 Fix asserts found in SampleApp and update the tests with additional interesting numbers.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1717743004

Review URL: https://codereview.chromium.org/1717743004
2016-02-19 16:54:12 -08:00
herb
3eb4895ea1 Add point spans, but fall back for all cases.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1711963003

curr/maxrss     loops   min     median  mean    max     stddev  samples                 config  bench
  10/10  MB     1       481µs   504µs   512µs   580µs   6%      ▁▁▄▆▂▃▁▁▁▁▁▁▃▇█▅▃█▃▅    nonrendering    SkBitmapFPAffineXClampYClampFilterOrig
  10/10  MB     1       2.21ms  2.31ms  2.31ms  2.53ms  4%      ▁▁▆▃▃▃▄▅▂▁▄▁█▅▁▁▄▂▆▁    nonrendering    SkBitmapFPAffineXClampYClampFilterLinr
  10/10  MB     1       2.49ms  2.63ms  2.61ms  2.78ms  4%      ▄▃▇▄▅▇▆▁▆▁▁▁▅▂▁▄▃█▆▃    nonrendering    SkBitmapFPAffineXClampYClampFiltersRGB
  10/10  MB     2       150µs   151µs   153µs   162µs   2%      ▅▇▂▂▁▁▂▂▁▁▂▂▁▁▁▁▇█▂▁    nonrendering    SkBitmapFPAffineXClampYClampNearestOrig
  10/10  MB     1       552µs   553µs   562µs   658µs   4%      ▁▁▁▁▁▁▁▁▁▄▃▁▁▁▁▁▁▁▁█    nonrendering    SkBitmapFPAffineXClampYClampNearestLinr
  10/10  MB     1       718µs   742µs   748µs   808µs   4%      ▃▃▁▁▅▁▁▁▁▃▃▃▃▇▇▇▁▁▇█    nonrendering    SkBitmapFPAffineXClampYClampNearestsRGB
  10/10  MB     1       277µs   286µs   292µs   341µs   7%      █▁▁▁▁▁▁▁▁▁▃▂▃▃▆█▄▂▂▂    nonrendering    SkBitmapFPScaleXClampYClampFilterOrig
  10/10  MB     1       2.21ms  2.41ms  2.39ms  2.55ms  4%      ▄▆▃▅▇▂▁▁▇▅▆▅▅▆▄▅█▅▆▅    nonrendering    SkBitmapFPScaleXClampYClampFilterLinr
  10/10  MB     1       2.55ms  2.68ms  2.69ms  2.94ms  4%      ▂▃▁▁▄▄▅▅▄▃█▄▃▇▂▁▃▃▂▂    nonrendering    SkBitmapFPScaleXClampYClampFiltersRGB
  10/10  MB     4       59.9µs  60.6µs  61.6µs  71.1µs  5%      ▂▃▄▁▁▁▁█▇▁▂▁▁▁▁▁▁▁▁▁    nonrendering    SkBitmapFPScaleXClampYClampNearestOrig
  10/10  MB     1       534µs   560µs   559µs   613µs   5%      ▇▂▁▅▅▅█▅▅▃▁▁▁▁▂▄▅▁▁▁    nonrendering    SkBitmapFPScaleXClampYClampNearestLinr
  10/10  MB     1       639µs   658µs   666µs   731µs   5%      ▅█▃▂▃▇▆▁▁▁▁▁▂▁▁▁▁▄█▄    nonrendering    SkBitmapFPScaleXClampYClampNearestsRGB
  10/10  MB     4       61.6µs  65.7µs  65.5µs  70.4µs  5%      ▃▃▃█▆▆▂▂▂▅▄▄▇▄▁▂▁▄██    nonrendering    SkBitmapFPIdentityXClampYClampFilterOrig
  10/10  MB     1       2.22ms  2.34ms  2.35ms  2.57ms  3%      ▂█▅▄▃▃▃▄▂▄▄▄▂▄▁▆▃▁▄▃    nonrendering    SkBitmapFPIdentityXClampYClampFilterLinr
  10/10  MB     1       2.42ms  2.52ms  2.52ms  2.76ms  4%      ▁▁▄▂▄▄▃▅█▄▅▁▃▁▁▃▁▄▃▃    nonrendering    SkBitmapFPIdentityXClampYClampFiltersRGB
  10/10  MB     4       59.7µs  64.7µs  64.8µs  73.3µs  7%      ▂▂▄▁▂▁▁▂▁▁▆▄▆▆▇▄▆▇▂█    nonrendering    SkBitmapFPIdentityXClampYClampNearestOrig
  10/10  MB     1       376µs   388µs   387µs   429µs   4%      ▃▃▆▁▄▄▁▃█▁▁▁▁▁▃▃▄▁▁▁    nonrendering    SkBitmapFPIdentityXClampYClampNearestLinr
  10/10  MB     1       496µs   511µs   518µs   568µs   5%      ▂▆▆█▆▃▂▂█▇▃▁▁▁▁▁▁▁▁▁    nonrendering    SkBitmapFPIdentityXClampYClampNearestsRGB

Review URL: https://codereview.chromium.org/1711963003
2016-02-19 14:39:47 -08:00
reed
c5b1228141 remove supports4f flag for colorfilters
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1720443002

Review URL: https://codereview.chromium.org/1720443002
2016-02-19 13:38:53 -08:00
robertphillips
cbc5bccebe Add GPU-backed SkImage case to ImageFilterCache unit test
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1713073002

Review URL: https://codereview.chromium.org/1713073002
2016-02-19 10:41:13 -08:00
robertphillips
df7bb471e5 Update SkImageFilter's cache to handle SkSpecialImages and add unit test
This is calved off of: https://codereview.chromium.org/1695823002/ (Get OffsetImageFilter really working with SkSpecialImages)

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1709263002
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/1709263002
2016-02-19 08:19:40 -08:00
herb
ed545042fc Switch to pixmap in API.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1712653002

Review URL: https://codereview.chromium.org/1712653002
2016-02-18 13:55:02 -08:00
reed
dd9ffea9ce make SkPM4f private
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1713653002

Review URL: https://codereview.chromium.org/1713653002
2016-02-18 12:39:14 -08:00
robertphillips
3b087f4010 Update SkSpecialImage API
This adds some temporary compatibility features:
   internal_getBM & internal_fromBM - to convert back & forth from Bitmaps in the ImageFilters
   internal_getProxy - to allow the special images to interface with the current ImagerFilter system

It also adds a unique ID, opaque flag and size method.
   The unique ID and size method are needed for the image filter's caching system.
   The opaque flag is need for swapping back & forth from Bitmaps

These are all calved off of https://codereview.chromium.org/1695823002/ (Get OffsetImageFilter really working with SkSpecialImages) which actually makes use of them.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1705113002

Review URL: https://codereview.chromium.org/1705113002
2016-02-18 08:48:04 -08:00
scroggo
ef0fed3bf0 Remove position from FrontBufferedStream
When FrontBufferedStream was written, it implemented getPosition()
and returned true for hasPosition(). The CL that introduced it
(crrev.com/23717055) does not have any indication why, but I'm guessing
it was because it was easy to implement. None of our decoders rely on
this (only some tests do).

Now that we have a decoder (SkRawCodec) that expects to be able to seek
a stream if it has a position (which makes sense - SkStream.h
associates that with SkStreamSeekable, and there is no other way to
check to see if a stream is seekable), it is failing because
FrontBufferedStream reports it has a position and the decoder tries to
seek.

Remove FrontBufferedStream::hasPosition() (reverting to the default,
false) and ::getPosition() (so it will return 0).

Fix tests - do not call FrontBufferedStream::getPosition()

Update CodexTest to test using an FrontBufferedStream, like Android
does.

BUG=b/27218441
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1703293002

Review URL: https://codereview.chromium.org/1703293002
2016-02-18 05:59:25 -08:00
caryclark
8e7b19d0f0 add interp path
Add path methods to determine if a pair of paths
can be interpolated, and to interpolate them.

R=reed@google.com, robertphillips@google.com
BUG=skia:4549
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1703943003

Review URL: https://codereview.chromium.org/1703943003
2016-02-18 04:11:49 -08:00
herb
c5eddd7d8d Add bilerp filtering.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1705203002

Review URL: https://codereview.chromium.org/1705203002
2016-02-17 19:50:05 -08:00
cblume
e2412d5738 Adding direct access to SkMipMap levels.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1639693002

Review URL: https://codereview.chromium.org/1639693002
2016-02-17 14:53:23 -08:00
robertphillips
48e78468f5 Mark existing image filter entry points that will be going away with Deprecated
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1709753002

Review URL: https://codereview.chromium.org/1709753002
2016-02-17 13:57:17 -08:00
msarett
82709da122 Delete KTX tests to fix Android build
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1707053002

Review URL: https://codereview.chromium.org/1707053002
2016-02-17 13:10:14 -08:00
msarett
8715d47e24 Make SkPicture/SkImageGenerator default to SkCodec
Remove reference to SkImageDecoder from SkPicture. Make the default
InstallPixelRefProc passed to CreateFromStream use
SkImageGenerator::NewFromEncoded instead.

Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
Remove the old version that used SkImageDecoder.

Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
now behaves lazily.

Update all clients to use the default.

Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.

This is a rebased version of:
https://codereview.chromium.org/1671193002/

TBR=reed@google.com

BUG=skia:4691
BUG=skia:4290
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1699183004

Review URL: https://codereview.chromium.org/1699183004
2016-02-17 10:02:29 -08:00