lv_image_dsc.h

Defines

LV_IMAGE_HEADER_MAGIC

Magic number for lvgl image, 9 means lvgl version 9 It must be neither a valid ASCII character nor larger than 0x80. See lv_image_src_get_type.

Typedefs

typedef enum lv_image_flags_t lv_image_flags_t

Enums

enum lv_image_flags_t

Values:

enumerator LV_IMAGE_FLAGS_PREMULTIPLIED

For RGB map of the image data, mark if it's pre-multiplied with alpha. For indexed image, this bit indicated palette data is pre-multiplied with alpha.

enumerator LV_IMAGE_FLAGS_COMPRESSED

The image data is compressed, so decoder needs to decode image firstly. If this flag is set, the whole image will be decompressed upon decode, and get_area_cb won't be necessary.

enumerator LV_IMAGE_FLAGS_ALLOCATED

The image is allocated from heap, thus should be freed after use.

enumerator LV_IMAGE_FLAGS_MODIFIABLE

If the image data is malloced and can be processed in place. In image decoder post processing, this flag means we modify it in-place.

enumerator LV_IMAGE_FLAGS_USER1

Flags reserved for user, lvgl won't use these bits.

enumerator LV_IMAGE_FLAGS_USER2
enumerator LV_IMAGE_FLAGS_USER3
enumerator LV_IMAGE_FLAGS_USER4
enumerator LV_IMAGE_FLAGS_USER5
enumerator LV_IMAGE_FLAGS_USER6
enumerator LV_IMAGE_FLAGS_USER7
enumerator LV_IMAGE_FLAGS_USER8
enum lv_image_compress_t

Values:

enumerator LV_IMAGE_COMPRESS_NONE
enumerator LV_IMAGE_COMPRESS_RLE

LVGL custom RLE compression

enumerator LV_IMAGE_COMPRESS_LZ4
struct lv_image_header_t

Public Members

uint32_t magic

Magic number. Must be LV_IMAGE_HEADER_MAGIC

uint32_t cf

Color format: See lv_color_format_t

uint32_t flags

Image flags, see lv_image_flags_t

uint32_t w
uint32_t h
uint32_t stride

Number of bytes in a row

uint32_t reserved_2

Reserved to be used later

struct lv_yuv_plane_t

Public Members

void *buf
uint32_t stride

Number of bytes in a row

union lv_yuv_buf_t

Public Members

lv_yuv_plane_t yuv

packed format

lv_yuv_plane_t y
lv_yuv_plane_t u
lv_yuv_plane_t v
struct lv_yuv_buf_t::[anonymous] planar

planar format with 3 plane

lv_yuv_plane_t uv
struct lv_yuv_buf_t::[anonymous] semi_planar

planar format with 2 plane

struct lv_image_dsc_t
#include <lv_image_dsc.h>

Struct to describe a constant image resource. It's similar to lv_draw_buf_t, but the data is constant.

Public Members

lv_image_header_t header

A header describing the basics of the image

uint32_t data_size

Size of the image in bytes

const uint8_t *data

Pointer to the data of the image

const void *reserved

A reserved field to make it has same size as lv_draw_buf_t