Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Unified Diff: blimp/client/core/compositor/blimp_image_decoder.cc

Issue 2624903006: Remove all blimp client code. (Closed)
Patch Set: Update buildbot configuration Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: blimp/client/core/compositor/blimp_image_decoder.cc
diff --git a/blimp/client/core/compositor/blimp_image_decoder.cc b/blimp/client/core/compositor/blimp_image_decoder.cc
deleted file mode 100644
index c5bfcf8c743d49d42ed92233e86c233b848896c7..0000000000000000000000000000000000000000
--- a/blimp/client/core/compositor/blimp_image_decoder.cc
+++ /dev/null
@@ -1,88 +0,0 @@
-// Copyright 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "blimp/client/core/compositor/blimp_image_decoder.h"
-
-#include "base/lazy_instance.h"
-#include "base/logging.h"
-#include "base/numerics/safe_conversions.h"
-#include "base/strings/string_number_conversions.h"
-#include "blimp/common/blob_cache/blob_cache.h"
-#include "blimp/common/blob_cache/id_util.h"
-#include "blimp/common/blob_cache/in_memory_blob_cache.h"
-#include "blimp/common/proto/blob_cache.pb.h"
-#include "third_party/libwebp/webp/decode.h"
-#include "third_party/libwebp/webp/demux.h"
-#include "third_party/skia/include/core/SkBitmap.h"
-
-namespace blimp {
-namespace client {
-
-bool DecodeBlimpImage(const void* input, size_t input_size, SkBitmap* bitmap) {
- DCHECK(bitmap);
-
- // Initialize an empty WebPDecoderConfig.
- WebPDecoderConfig config;
- if (!WebPInitDecoderConfig(&config)) {
- LOG(WARNING) << "Failed to initialize WebP config.";
- return false;
- }
-
- WebPData webp_data;
- webp_data.bytes = reinterpret_cast<const uint8_t*>(input);
- webp_data.size = input_size;
-
- // Read WebP feature information into |config.input|, which is a
- // WebPBitstreamFeatures. It contains information such as width, height and
- // whether the WebP image has an alpha channel or not.
- if (WebPGetFeatures(webp_data.bytes, webp_data.size, &config.input) !=
- VP8_STATUS_OK) {
- LOG(WARNING) << "Failed to get WebP features.";
- return false;
- }
- // Animations are not supported.
- DCHECK_EQ(0, config.input.has_animation);
-
- // Allocate correct size for the bitmap based on the WebPBitstreamFeatures.
- bitmap->allocN32Pixels(config.input.width, config.input.height);
- DCHECK_EQ(kPremul_SkAlphaType, bitmap->alphaType());
-
- // Setup the decoder buffer based on the WebPBitstreamFeatures.
- WebPDecBuffer decoderBuffer;
-
-#if SK_B32_SHIFT // Output little-endian RGBA pixels (Android).
- decoderBuffer.colorspace = MODE_rgbA;
-#else // Output little-endian BGRA pixels.
- decoderBuffer.colorspace = MODE_bgrA;
-#endif
- decoderBuffer.u.RGBA.stride = config.input.width * 4;
- decoderBuffer.u.RGBA.size = decoderBuffer.u.RGBA.stride * config.input.height;
-
- // Instead of using the default WebPDecBuffer output, make WebPDecode directly
- // write into the SkBitmap.
- decoderBuffer.is_external_memory = 1;
- decoderBuffer.u.RGBA.rgba =
- reinterpret_cast<uint8_t*>(bitmap->getAddr32(0, 0));
-
- // Set the config up to use the decoding buffer we created.
- config.output = decoderBuffer;
-
- // Decode the input data into the bitmap buffer.
- bool success =
- WebPDecode(webp_data.bytes, webp_data.size, &config) == VP8_STATUS_OK;
-
- // Now free the buffer. It is safe to call this even when the buffer is
- // external and not allocated by WebPDecode.
- WebPFreeDecBuffer(&config.output);
-
- if (!success) {
- LOG(WARNING) << "Failed to decode WebP data.";
- return false;
- }
-
- return true;
-}
-
-} // namespace client
-} // namespace blimp
« no previous file with comments | « blimp/client/core/compositor/blimp_image_decoder.h ('k') | blimp/client/core/compositor/blob_channel_feature.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698