Форматы пикселей окна определяют способ хранения информации в памяти GPU
Модель RGBA использует цветовое кодирование Red Green Blue (RGB) с дополнительной информацией об альфа канале (уровень прозрачности). Приложения, которым не требуется альфа-смешивание, могут использовать форматы, имеющие в качестве альфа-компонента отметку X.
Screen API поддерживает следующие форматы пикселей окон (описание этих форматов доступно на сайте www.fourcc.org):
Формат | Описание |
---|---|
SCREEN_FORMAT_BYTE | |
SCREEN_FORMAT_RGBA4444 | 16 бит-на-пиксель; (4 бит на канал) RGB с альфа каналом. |
SCREEN_FORMAT_RGBX4444 | 16 бит-на-пиксель; (4 бит на канал) RGB с альфа каналом (альфа канал игнорируется). |
SCREEN_FORMAT_RGBA5551 | 16 бит-на-пиксель; 2 байта содержат R, G, и B компоненты (5 бит на канал и 1 бит на альфа компонент). |
SCREEN_FORMAT_RGBX5551 | 16 бит-на-пиксель; 2 байта содержат R, G, и B компоненты (5 бит на канал и 1 бит на альфа компонент, который игнорируется). |
SCREEN_FORMAT_RGB565 | 16 бит-на-пиксель; 5 бит на R и B компоненты и 6 бит для G. Формат представляет следующий порядок бит (от старшего байта к младшему): RRRRRGGG GGGBBBBB. |
SCREEN_FORMAT_RGB888 | 24 бит-на-пиксель; (8 бит на канал) RGB. |
SCREEN_FORMAT_RGBA8888 | 32 бит-на-пиксель; (8 бит на канал) RGB с альфа каналом. |
SCREEN_FORMAT_RGBX8888 | 32 бит-на-пиксель; (8 бит на канал) RGB с альфа каналом (альфа канал игнорируется). |
SCREEN_FORMAT_YVU9 | 9 бит-на-пиксель; YUV формат. 8-bit Y plane and 8-bit 4x4 subsampled V and U planes. Registered by Intel. |
SCREEN_FORMAT_YUV420 | Стандартный формат передачи NTSC TV. |
SCREEN_FORMAT_NV12 | 12 бит-на-пиксель; YUV формат. 8-bit Y plane and 2x2 subsampled, interleaved U and V planes. |
SCREEN_FORMAT_YV12 | 12 бит-на-пиксель; YUV формат. 8-bit Y plane and 8-bit 2x2 subsampled U and V planes. |
SCREEN_FORMAT_UYVY | 16 бит-на-пиксель; упакованный YUV формат. YUV 4:2:2 — Y sample at every pixel, U and V sampled at every second pixel horizontally on each line. A macropixel contains 2 pixels in 1 u_int32. |
SCREEN_FORMAT_YUY2 | 16 бит-на-пиксель; упакованный YUV формат. YUV 4:2:2 as in UYVY, but with different component ordering within the u_int32 macropixel. |
SCREEN_FORMAT_YVYU | 16 бит-на-пиксель; упакованный YUV формат. YUV 4:2:2 as for UYVY, but with different component ordering within the u_int32 macropixel. |
SCREEN_FORMAT_V422 | Упакованный YUV формат. Инвертированная версия UYVY. |
SCREEN_FORMAT_AYUV | Упакованный YUV формат. Комбинируется YUV и альфа канал. |
Также в Screen API поддерживаются следующие дополнительные форматы:
Формат | Описание |
---|---|
SCREEN_FORMAT_BGRA8888 | 32 бит-на-пиксель; (8 бит на канал) RGB с альфа каналом. Формат представляет следующий порядок бит (от старшего байта к младшему): BBBBBBBB GGGGGGGG RRRRRRRR AAAAAAAA. |
SCREEN_FORMAT_BGR565 | 16 бит-на-пиксель; 5 бит на R и B компоненты и 6 бит для G. Формат представляет следующий порядок бит (от старшего байта к младшему): BBBBBGGG GGGRRRRR |
SCREEN_FORMAT_BGRA5551 | 16 бит-на-пиксель; 2 байта содержат R, G, и B компоненты (5 бит на канал и 1 бит на альфа компонент). Формат представляет следующий порядок бит (от старшего байта к младшему): BBBBBGGG GGRRRRRA. |
Предыдущий раздел: Окна