boot animation is dithered and scaled

disable dithering which shouldn't have been enabled
in the first place because the frames are typically scaled.
we still use a 16-bits texture format to preserve memory.

Bug: 5600948
Change-Id: Ib4d6e133df4375d0d735cd4325b6e589bbc5dafe
This commit is contained in:
Mathias Agopian
2011-11-10 15:59:07 -08:00
parent 785fd3685a
commit 2b99e55ee3

View File

@@ -42,6 +42,7 @@
#include <surfaceflinger/ISurfaceComposerClient.h>
#include <core/SkBitmap.h>
#include <core/SkStream.h>
#include <images/SkImageDecoder.h>
#include <GLES/gl.h>
@@ -150,9 +151,15 @@ status_t BootAnimation::initTexture(void* buffer, size_t len)
//StopWatch watch("blah");
SkBitmap bitmap;
SkImageDecoder::DecodeMemory(buffer, len,
&bitmap, SkBitmap::kRGB_565_Config,
SkImageDecoder::kDecodePixels_Mode);
SkMemoryStream stream(buffer, len);
SkImageDecoder* codec = SkImageDecoder::Factory(&stream);
codec->setDitherImage(false);
if (codec) {
codec->decode(&stream, &bitmap,
SkBitmap::kRGB_565_Config,
SkImageDecoder::kDecodePixels_Mode);
delete codec;
}
// ensure we can call getPixels(). No need to call unlock, since the
// bitmap will go out of scope when we return from this method.