add image type for RGBA bitmaps that were compressed by a combination of JPEG (RGB) and LZ (alpha channel).

This commit is contained in:
Yonit Halperin 2010-06-20 17:18:33 +03:00 committed by Alexander Larsson
parent 63f1c6c01a
commit 99f2665776
2 changed files with 19 additions and 0 deletions

View File

@ -193,6 +193,18 @@ typedef struct SPICE_ATTR_PACKED SpiceZlibGlzRGBImage {
SpiceZlibGlzRGBData zlib_glz;
} SpiceZlibGlzRGBImage;
typedef struct SPICE_ATTR_PACKED SpiceJPEGAlphaData {
uint8_t flags;
uint32_t jpeg_size;
uint32_t data_size;
uint8_t data[0];
} SpiceJPEGAlphaData;
typedef struct SPICE_ATTR_PACKED SpiceJPEGAlphaImage {
SpiceImageDescriptor descriptor;
SpiceJPEGAlphaData jpeg_alpha;
} SpiceJPEGAlphaImage;
typedef struct SPICE_ATTR_PACKED SpiceOpaque {
SPICE_ADDRESS src_bitmap;
SpiceRect src_area;

View File

@ -130,6 +130,7 @@ enum SpiceImageType {
SPICE_IMAGE_TYPE_JPEG,
SPICE_IMAGE_TYPE_FROM_CACHE_LOSSLESS,
SPICE_IMAGE_TYPE_ZLIB_GLZ_RGB,
SPICE_IMAGE_TYPE_JPEG_ALPHA,
SPICE_IMAGE_TYPE_ENUM_END
};
@ -165,6 +166,12 @@ enum SpiceBitmapFlags {
SPICE_BITMAP_FLAGS_MASK = 0x7
};
enum SpiceJpegAlphaFlags {
SPICE_JPEG_ALPHA_FLAGS_TOP_DOWN = (1 << 0),
SPICE_JPEG_ALPHA_FLAGS_MASK = 0x1
};
enum SpiceImageScaleMode {
SPICE_IMAGE_SCALE_MODE_INTERPOLATE,
SPICE_IMAGE_SCALE_MODE_NEAREST,