Enumeration

GdkMemoryFormat

Declaration

enum Gdk.MemoryFormat

Description [src]

Describes formats that image data can have in memory.

It describes formats by listing the contents of the memory passed to it. So GDK_MEMORY_A8R8G8B8 will be 1 byte (8 bits) of alpha, followed by a byte each of red, green and blue. It is not endian-dependent, so CAIRO_FORMAT_ARGB32 is represented by different GdkMemoryFormats on architectures with different endiannesses.

Its naming is modelled after VkFormat for details).

Members

GDK_MEMORY_B8G8R8A8_PREMULTIPLIED

4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value.

  • Value: 0
  • Available since: 4.0
GDK_MEMORY_A8R8G8B8_PREMULTIPLIED

4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value.

  • Value: 1
  • Available since: 4.0
GDK_MEMORY_R8G8B8A8_PREMULTIPLIED

4 bytes; for red, green, blue, alpha The color values are premultiplied with the alpha value.

  • Value: 2
  • Available since: 4.0
GDK_MEMORY_B8G8R8A8

4 bytes; for blue, green, red, alpha.

  • Value: 3
  • Available since: 4.0
GDK_MEMORY_A8R8G8B8

4 bytes; for alpha, red, green, blue.

  • Value: 4
  • Available since: 4.0
GDK_MEMORY_R8G8B8A8

4 bytes; for red, green, blue, alpha.

  • Value: 5
  • Available since: 4.0
GDK_MEMORY_A8B8G8R8

4 bytes; for alpha, blue, green, red.

  • Value: 6
  • Available since: 4.0
GDK_MEMORY_R8G8B8

3 bytes; for red, green, blue. The data is opaque.

  • Value: 7
  • Available since: 4.0
GDK_MEMORY_B8G8R8

3 bytes; for blue, green, red. The data is opaque.

  • Value: 8
  • Available since: 4.0
GDK_MEMORY_R16G16B16

3 guint16 values; for red, green, blue.

  • Value: 9
  • Available since: 4.6
GDK_MEMORY_R16G16B16A16_PREMULTIPLIED

4 guint16 values; for red, green, blue, alpha. The color values are premultiplied with the alpha value.

  • Value: 10
  • Available since: 4.6
GDK_MEMORY_R16G16B16A16

4 guint16 values; for red, green, blue, alpha.

  • Value: 11
  • Available since: 4.6
GDK_MEMORY_R16G16B16_FLOAT

3 half-float values; for red, green, blue. The data is opaque.

  • Value: 12
  • Available since: 4.6
GDK_MEMORY_R16G16B16A16_FLOAT_PREMULTIPLIED

4 half-float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value.

  • Value: 13
  • Available since: 4.6
GDK_MEMORY_R16G16B16A16_FLOAT

4 half-float values; for red, green, blue and alpha.

  • Value: 14
  • Available since: 4.6
GDK_MEMORY_R32G32B32_FLOAT

3 float values; for red, green, blue.

  • Value: 15
  • Available since: 4.0
GDK_MEMORY_R32G32B32A32_FLOAT_PREMULTIPLIED

4 float values; for red, green, blue and alpha. The color values are premultiplied with the alpha value.

  • Value: 16
  • Available since: 4.6
GDK_MEMORY_R32G32B32A32_FLOAT

4 float values; for red, green, blue and alpha.

  • Value: 17
  • Available since: 4.6
GDK_MEMORY_G8A8_PREMULTIPLIED

2 bytes; for grayscale, alpha. The color values are premultiplied with the alpha value.

  • Value: 18
  • Available since: 4.12
GDK_MEMORY_G8A8

2 bytes; for grayscale, alpha.

  • Value: 19
  • Available since: 4.12
GDK_MEMORY_G8

One byte; for grayscale. The data is opaque.

  • Value: 20
  • Available since: 4.12
GDK_MEMORY_G16A16_PREMULTIPLIED

2 guint16 values; for grayscale, alpha. The color values are premultiplied with the alpha value.

  • Value: 21
  • Available since: 4.12
GDK_MEMORY_G16A16

2 guint16 values; for grayscale, alpha.

  • Value: 22
  • Available since: 4.12
GDK_MEMORY_G16

One guint16 value; for grayscale. The data is opaque.

  • Value: 23
  • Available since: 4.12
GDK_MEMORY_A8

One byte; for alpha.

  • Value: 24
  • Available since: 4.12
GDK_MEMORY_A16

One guint16 value; for alpha.

  • Value: 25
  • Available since: 4.12
GDK_MEMORY_A16_FLOAT

One half-float value; for alpha.

  • Value: 26
  • Available since: 4.12
GDK_MEMORY_A32_FLOAT

One float value; for alpha.

  • Value: 27
  • Available since: 4.12
GDK_MEMORY_A8B8G8R8_PREMULTIPLIED

4 bytes; for alpha, blue, green, red, The color values are premultiplied with the alpha value.

  • Value: 28
  • Available since: 4.14
GDK_MEMORY_B8G8R8X8

4 bytes; for blue, green, red, unused.

  • Value: 29
  • Available since: 4.14
GDK_MEMORY_X8R8G8B8

4 bytes; for unused, red, green, blue.

  • Value: 30
  • Available since: 4.14
GDK_MEMORY_R8G8B8X8

4 bytes; for red, green, blue, unused.

  • Value: 31
  • Available since: 4.14
GDK_MEMORY_X8B8G8R8

4 bytes; for unused, blue, green, red.

  • Value: 32
  • Available since: 4.14
GDK_MEMORY_G8_B8R8_420

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cb followed by Cr. Subsampled in both the X and Y direction.

Commonly known by the fourcc “NV12”.

  • Value: 33
  • Available since: 4.20
GDK_MEMORY_G8_R8B8_420

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. Subsampled in both the X and Y direction.

Commonly known by the fourcc “NV21”.

  • Value: 34
  • Available since: 4.20
GDK_MEMORY_G8_B8R8_422

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cb followed by Cr. Subsampled in the X direction.

Commonly known by the fourcc “NV16”.

  • Value: 35
  • Available since: 4.20
GDK_MEMORY_G8_R8B8_422

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. Subsampled in the X direction.

Commonly known by the fourcc “NV61”.

  • Value: 36
  • Available since: 4.20
GDK_MEMORY_G8_B8R8_444

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cb followed by Cr. This format is not subsampled.

Commonly known by the fourcc “NV24”.

  • Value: 37
  • Available since: 4.20
GDK_MEMORY_G8_R8B8_444

Multiplane format with 2 planes.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. This format is not subsampled.

Commonly known by the fourcc “NV42”.

  • Value: 38
  • Available since: 4.20
GDK_MEMORY_G10X6_B10X6R10X6_420

Multiplane format with 2 planes.

Each channel is a 16 bit integer, but only the highest 10 bits are used.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. This format is not subsampled.

Commonly known by the fourcc “P010”.

  • Value: 39
  • Available since: 4.20
GDK_MEMORY_G12X4_B12X4R12X4_420

Multiplane format with 2 planes.

Each channel is a 16 bit integer, but only the highest 10 bits are used.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. This format is not subsampled.

Commonly known by the fourcc “P012”.

  • Value: 40
  • Available since: 4.20
GDK_MEMORY_G16_B16R16_420

Multiplane format with 2 planes.

Each channel is a 16 bit integer.

The first plane contains the first channel, usually containing luma values. The second plane with interleaved chroma values, Cr followed by Cb. This format is not subsampled.

Commonly known by the fourcc “P016”.

  • Value: 41
  • Available since: 4.20
GDK_MEMORY_G8_B8_R8_410

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the first chroma chanel. Subsampled in both the X and Y direction with 4:1 ratio. It is mapped into the 3rd channel.

The third plane usually contains the second chroma channel. Subsampled in both the X and Y direction with 4:1 ratio. It is mapped into the 1st channel.

Commonly known by the fourcc “YUV410”.

  • Value: 42
  • Available since: 4.20
GDK_MEMORY_G8_R8_B8_410

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the second chroma chanel. Subsampled in both the X and Y direction with 4:1 ratio. It is mapped into the 1st channel.

The third plane usually contains the first chroma channel. Subsampled in both the X and Y direction with 4:1 ratio. It is mapped into the 3rd channel.

Commonly known by the fourcc “YVU410”.

  • Value: 43
  • Available since: 4.20
GDK_MEMORY_G8_B8_R8_411

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the first chroma chanel. Subsampled in the X direction with 4:1 ratio. It is mapped into the 3rd channel.

The third plane usually contains the second chroma channel. Subsampled in the X direction with 4:1 ratio. It is mapped into the 1st channel.

Commonly known by the fourcc “YUV411”.

  • Value: 44
  • Available since: 4.20
GDK_MEMORY_G8_R8_B8_411

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the second chroma chanel. Subsampled in the X direction with 4:1 ratio. It is mapped into the 1st channel.

The third plane usually contains the first chroma channel. Subsampled in the X direction with 4:1 ratio. It is mapped into the 3rd channel.

Commonly known by the fourcc “YVU411”.

  • Value: 45
  • Available since: 4.20
GDK_MEMORY_G8_B8_R8_420

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the first chroma chanel. Subsampled in both the X and Y direction. It is mapped into the 3rd channel.

The third plane usually contains the second chroma channel. Subsampled in both the X and Y direction. It is mapped into the 1st channel.

Commonly known by the fourcc “YUV420”.

  • Value: 46
  • Available since: 4.20
GDK_MEMORY_G8_R8_B8_420

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the second chroma chanel. Subsampled in both the X and Y direction. It is mapped into the 1st channel.

The third plane usually contains the first chroma channel. Subsampled in both the X and Y direction. It is mapped into the 3rd channel.

Commonly known by the fourcc “YVU420”.

  • Value: 47
  • Available since: 4.20
GDK_MEMORY_G8_B8_R8_422

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the first chroma chanel. Subsampled in the X direction. It is mapped into the 3rd channel.

The third plane usually contains the second chroma channel. Subsampled in the X direction. It is mapped into the 1st channel.

Commonly known by the fourcc “YUV422”.

  • Value: 48
  • Available since: 4.20
GDK_MEMORY_G8_R8_B8_422

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the second chroma chanel. Subsampled in the X direction. It is mapped into the 1st channel.

The third plane usually contains the first chroma channel. Subsampled in the X direction. It is mapped into the 3rd channel.

Commonly known by the fourcc “YVU422”.

  • Value: 49
  • Available since: 4.20
GDK_MEMORY_G8_B8_R8_444

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the first chroma chanel. It is mapped into the 3rd channel.

The third plane usually contains the second chroma channel. It is mapped into the 1st channel.

Commonly known by the fourcc “YUV444”.

  • Value: 50
  • Available since: 4.20
GDK_MEMORY_G8_R8_B8_444

Multiplane format with 3 planes.

Each channel is a 8 bit integer.

The first plane usually contains the luma channel. It is mapped into the 2nd channel.

The second plane usually contains the second chroma chanel. Subsampled in the X direction. It is mapped into the 1st channel.

The third plane usually contains the first chroma channel. Subsampled in the X direction. It is mapped into the 3rd channel.

Commonly known by the fourcc “YVU444”.

  • Value: 51
  • Available since: 4.20
GDK_MEMORY_G8B8G8R8_422

Packed format with subsampled channels.

Each channel is a 8 bit integer. The red and blue/chroma channels are subsampled and interleaved with the green/luma channel.

Each block contains 2 pixels, so the width must be a multiple of 2.

Commonly known by the fourcc “YUYV”.

  • Value: 52
  • Available since: 4.20
GDK_MEMORY_G8R8G8B8_422

Packed format with subsampled channels.

Each channel is a 8 bit integer. The red and blue/chroma channels are subsampled and interleaved with the green/luma channel.

Each block contains 2 pixels, so the width must be a multiple of 2.

Commonly known by the fourcc “YVYU”.

  • Value: 53
  • Available since: 4.20
GDK_MEMORY_R8G8B8G8_422

Packed format with subsampled channels.

Each channel is a 8 bit integer. The red and blue/chroma channels are subsampled and interleaved with the green/luma channel.

Each block contains 2 pixels, so the width must be a multiple of 2.

Commonly known by the fourcc “VYUY”.

  • Value: 54
  • Available since: 4.20
GDK_MEMORY_B8G8R8G8_422

Packed format with subsampled channels.

Each channel is a 8 bit integer. The red and blue/chroma channels are subsampled and interleaved with the green/luma channel.

Each block contains 2 pixels, so the width must be a multiple of 2.

Commonly known by the fourcc “UYVY”.

  • Value: 55
  • Available since: 4.20
GDK_MEMORY_N_FORMATS

The number of formats. This value will change as more formats get added, so do not rely on its concrete integer.

  • Value: 56
  • Available since: 4.0