aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/encode
diff options
context:
space:
mode:
authorGravatar Matt Sarett <msarett@google.com>2017-05-16 17:06:52 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-17 02:24:29 +0000
commitd5a16911bb0da6b03daee6e9dd896429c7f8e8a1 (patch)
tree1aae55437f046079641a7519e5702af01d311518 /include/encode
parent1cdbdda91748d5a3fece595e07de5efb662aaaad (diff)
Add support for webp lossless compression
Bug: 713862 Change-Id: I8dcc6506338f3c54fb14a78620e7daaadadfedde Reviewed-on: https://skia-review.googlesource.com/17073 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
Diffstat (limited to 'include/encode')
-rw-r--r--include/encode/SkWebpEncoder.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/encode/SkWebpEncoder.h b/include/encode/SkWebpEncoder.h
index 8d894a442c..97d2742920 100644
--- a/include/encode/SkWebpEncoder.h
+++ b/include/encode/SkWebpEncoder.h
@@ -14,10 +14,25 @@ class SkWStream;
namespace SkWebpEncoder {
+ enum class SK_API Compression {
+ kLossy,
+ kLossless,
+ };
+
struct SK_API Options {
/**
- * |fQuality| must be in [0.0f, 100.0f] where 0.0f corresponds to the lowest quality.
+ * |fCompression| determines whether we will use webp lossy or lossless compression.
+ *
+ * |fQuality| must be in [0.0f, 100.0f].
+ * If |fCompression| is kLossy, |fQuality| corresponds to the visual quality of the
+ * encoding. Decreasing the quality will result in a smaller encoded image.
+ * If |fCompression| is kLossless, |fQuality| corresponds to the amount of effort
+ * put into the encoding. Lower values will compress faster into larger files,
+ * while larger values will compress slower into smaller files.
+ *
+ * This scheme is designed to match the libwebp API.
*/
+ Compression fCompression = Compression::kLossy;
float fQuality = 100.0f;
/**