Enum wayland_client::protocol::wl_shm::Format [] [src]

#[repr(u32)]
pub enum Format { Argb8888, Xrgb8888, C8, Rgb332, Bgr233, Xrgb4444, Xbgr4444, Rgbx4444, Bgrx4444, Argb4444, Abgr4444, Rgba4444, Bgra4444, Xrgb1555, Xbgr1555, Rgbx5551, Bgrx5551, Argb1555, Abgr1555, Rgba5551, Bgra5551, Rgb565, Bgr565, Rgb888, Bgr888, Xbgr8888, Rgbx8888, Bgrx8888, Abgr8888, Rgba8888, Bgra8888, Xrgb2101010, Xbgr2101010, Rgbx1010102, Bgrx1010102, Argb2101010, Abgr2101010, Rgba1010102, Bgra1010102, Yuyv, Yvyu, Uyvy, Vyuy, Ayuv, Nv12, Nv21, Nv16, Nv61, Yuv410, Yvu410, Yuv411, Yvu411, Yuv420, Yvu420, Yuv422, Yvu422, Yuv444, Yvu444, }

pixel formats

This describes the memory layout of an individual pixel.

All renderers should support argb8888 and xrgb8888 but any other formats are optional and may not be supported by the particular renderer in use.

The drm format codes match the #defines in drm_fourcc.h. The formats actually supported by the compositor will be reported by the format event.

Variants

32-bit ARGB format, [31:0] A:R:G:B 8:8:8:8 little endian

32-bit RGB format, [31:0] x:R:G:B 8:8:8:8 little endian

8-bit color index format, [7:0] C

8-bit RGB format, [7:0] R:G:B 3:3:2

8-bit BGR format, [7:0] B:G:R 2:3:3

16-bit xRGB format, [15:0] x:R:G:B 4:4:4:4 little endian

16-bit xBGR format, [15:0] x:B:G:R 4:4:4:4 little endian

16-bit RGBx format, [15:0] R:G:B:x 4:4:4:4 little endian

16-bit BGRx format, [15:0] B:G:R:x 4:4:4:4 little endian

16-bit ARGB format, [15:0] A:R:G:B 4:4:4:4 little endian

16-bit ABGR format, [15:0] A:B:G:R 4:4:4:4 little endian

16-bit RBGA format, [15:0] R:G:B:A 4:4:4:4 little endian

16-bit BGRA format, [15:0] B:G:R:A 4:4:4:4 little endian

16-bit xRGB format, [15:0] x:R:G:B 1:5:5:5 little endian

16-bit xBGR 1555 format, [15:0] x:B:G:R 1:5:5:5 little endian

16-bit RGBx 5551 format, [15:0] R:G:B:x 5:5:5:1 little endian

16-bit BGRx 5551 format, [15:0] B:G:R:x 5:5:5:1 little endian

16-bit ARGB 1555 format, [15:0] A:R:G:B 1:5:5:5 little endian

16-bit ABGR 1555 format, [15:0] A:B:G:R 1:5:5:5 little endian

16-bit RGBA 5551 format, [15:0] R:G:B:A 5:5:5:1 little endian

16-bit BGRA 5551 format, [15:0] B:G:R:A 5:5:5:1 little endian

16-bit RGB 565 format, [15:0] R:G:B 5:6:5 little endian

16-bit BGR 565 format, [15:0] B:G:R 5:6:5 little endian

24-bit RGB format, [23:0] R:G:B little endian

24-bit BGR format, [23:0] B:G:R little endian

32-bit xBGR format, [31:0] x:B:G:R 8:8:8:8 little endian

32-bit RGBx format, [31:0] R:G:B:x 8:8:8:8 little endian

32-bit BGRx format, [31:0] B:G:R:x 8:8:8:8 little endian

32-bit ABGR format, [31:0] A:B:G:R 8:8:8:8 little endian

32-bit RGBA format, [31:0] R:G:B:A 8:8:8:8 little endian

32-bit BGRA format, [31:0] B:G:R:A 8:8:8:8 little endian

32-bit xRGB format, [31:0] x:R:G:B 2:10:10:10 little endian

32-bit xBGR format, [31:0] x:B:G:R 2:10:10:10 little endian

32-bit RGBx format, [31:0] R:G:B:x 10:10:10:2 little endian

32-bit BGRx format, [31:0] B:G:R:x 10:10:10:2 little endian

32-bit ARGB format, [31:0] A:R:G:B 2:10:10:10 little endian

32-bit ABGR format, [31:0] A:B:G:R 2:10:10:10 little endian

32-bit RGBA format, [31:0] R:G:B:A 10:10:10:2 little endian

32-bit BGRA format, [31:0] B:G:R:A 10:10:10:2 little endian

packed YCbCr format, [31:0] Cr0:Y1:Cb0:Y0 8:8:8:8 little endian

packed YCbCr format, [31:0] Cb0:Y1:Cr0:Y0 8:8:8:8 little endian

packed YCbCr format, [31:0] Y1:Cr0:Y0:Cb0 8:8:8:8 little endian

packed YCbCr format, [31:0] Y1:Cb0:Y0:Cr0 8:8:8:8 little endian

packed AYCbCr format, [31:0] A:Y:Cb:Cr 8:8:8:8 little endian

2 plane YCbCr Cr:Cb format, 2x2 subsampled Cr:Cb plane

2 plane YCbCr Cb:Cr format, 2x2 subsampled Cb:Cr plane

2 plane YCbCr Cr:Cb format, 2x1 subsampled Cr:Cb plane

2 plane YCbCr Cb:Cr format, 2x1 subsampled Cb:Cr plane

3 plane YCbCr format, 4x4 subsampled Cb (1) and Cr (2) planes

3 plane YCbCr format, 4x4 subsampled Cr (1) and Cb (2) planes

3 plane YCbCr format, 4x1 subsampled Cb (1) and Cr (2) planes

3 plane YCbCr format, 4x1 subsampled Cr (1) and Cb (2) planes

3 plane YCbCr format, 2x2 subsampled Cb (1) and Cr (2) planes

3 plane YCbCr format, 2x2 subsampled Cr (1) and Cb (2) planes

3 plane YCbCr format, 2x1 subsampled Cb (1) and Cr (2) planes

3 plane YCbCr format, 2x1 subsampled Cr (1) and Cb (2) planes

3 plane YCbCr format, non-subsampled Cb (1) and Cr (2) planes

3 plane YCbCr format, non-subsampled Cr (1) and Cb (2) planes

Methods

impl Format
[src]

[src]

[src]

Trait Implementations

impl Copy for Format
[src]

impl Clone for Format
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for Format
[src]

[src]

Formats the value using the given formatter.

impl PartialEq for Format
[src]

[src]

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.