summaryrefslogtreecommitdiffstats
path: root/include/hardware/hardware.h
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2010-06-14 21:08:00 -0700
committerMathias Agopian <mathias@google.com>2010-06-15 17:32:16 -0700
commit373a9c6efebc97ade940dc5996f24992cda450c7 (patch)
tree00c56a2965573bf13a2fe3be4fcd492783d75472 /include/hardware/hardware.h
parentb15879a589bb5ce350869e1a735840679e4b2aaa (diff)
downloadhardware_libhardware-373a9c6efebc97ade940dc5996f24992cda450c7.zip
hardware_libhardware-373a9c6efebc97ade940dc5996f24992cda450c7.tar.gz
hardware_libhardware-373a9c6efebc97ade940dc5996f24992cda450c7.tar.bz2
Add some useful YUV formats. Add fourcc version of the definitions.
also removed incorrect 4:2:0 interleaved formats Change-Id: Ib477de86504cc67861def16fc4dfdae0dd3eb59d
Diffstat (limited to 'include/hardware/hardware.h')
-rw-r--r--include/hardware/hardware.h55
1 files changed, 36 insertions, 19 deletions
diff --git a/include/hardware/hardware.h b/include/hardware/hardware.h
index 210a5aa..d316ccf 100644
--- a/include/hardware/hardware.h
+++ b/include/hardware/hardware.h
@@ -123,27 +123,44 @@ int hw_get_module(const char *id, const struct hw_module_t **module);
*/
enum {
- HAL_PIXEL_FORMAT_RGBA_8888 = 1,
- HAL_PIXEL_FORMAT_RGBX_8888 = 2,
- HAL_PIXEL_FORMAT_RGB_888 = 3,
- HAL_PIXEL_FORMAT_RGB_565 = 4,
- HAL_PIXEL_FORMAT_BGRA_8888 = 5,
- HAL_PIXEL_FORMAT_RGBA_5551 = 6,
- HAL_PIXEL_FORMAT_RGBA_4444 = 7,
- HAL_PIXEL_FORMAT_YCbCr_422_SP = 0x10,
- HAL_PIXEL_FORMAT_YCrCb_420_SP = 0x11,
- HAL_PIXEL_FORMAT_YCbCr_422_P = 0x12,
- HAL_PIXEL_FORMAT_YCbCr_420_P = 0x13,
- HAL_PIXEL_FORMAT_YCbCr_422_I = 0x14,
- HAL_PIXEL_FORMAT_YCbCr_420_I = 0x15,
- HAL_PIXEL_FORMAT_CbYCrY_422_I = 0x16,
- HAL_PIXEL_FORMAT_CbYCrY_420_I = 0x17,
- HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED = 0x20,
- HAL_PIXEL_FORMAT_YCbCr_420_SP = 0x21,
- HAL_PIXEL_FORMAT_YCrCb_420_SP_TILED = 0x22,
- HAL_PIXEL_FORMAT_YCrCb_422_SP = 0x23,
+ HAL_PIXEL_FORMAT_RGBA_8888 = 1,
+ HAL_PIXEL_FORMAT_RGBX_8888 = 2,
+ HAL_PIXEL_FORMAT_RGB_888 = 3,
+ HAL_PIXEL_FORMAT_RGB_565 = 4,
+ HAL_PIXEL_FORMAT_BGRA_8888 = 5,
+ HAL_PIXEL_FORMAT_RGBA_5551 = 6,
+ HAL_PIXEL_FORMAT_RGBA_4444 = 7,
+ /* 0x8 - 0xF range unavailable */
+ HAL_PIXEL_FORMAT_YCbCr_422_SP = 0x10, // NV16
+ HAL_PIXEL_FORMAT_YCrCb_420_SP = 0x11, // NV21 (_adreno)
+ HAL_PIXEL_FORMAT_YCbCr_422_P = 0x12, // IYUV
+ HAL_PIXEL_FORMAT_YCbCr_420_P = 0x13, // YUV9
+ HAL_PIXEL_FORMAT_YCbCr_422_I = 0x14, // YUY2 (_adreno)
+ /* 0x15 reserved */
+ HAL_PIXEL_FORMAT_CbYCrY_422_I = 0x16, // UYVY (_adreno)
+ /* 0x17 reserved */
+ /* 0x18 - 0x1F range unavailable */
+ HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED = 0x20, // NV12_adreno_tiled
+ HAL_PIXEL_FORMAT_YCbCr_420_SP = 0x21, // NV12
+ HAL_PIXEL_FORMAT_YCrCb_420_SP_TILED = 0x22, // NV21_adreno_tiled
+ HAL_PIXEL_FORMAT_YCrCb_422_SP = 0x23, // NV61
+ HAL_PIXEL_FORMAT_YCrCb_422_P = 0x24, // YV12 (_adreno)
};
+/* fourcc mapping for the YUV formats. see http://www.fourcc.org */
+enum {
+ HAL_PIXEL_FORMAT_NV16 = HAL_PIXEL_FORMAT_YCbCr_422_SP,
+ HAL_PIXEL_FORMAT_NV21 = HAL_PIXEL_FORMAT_YCrCb_420_SP,
+ HAL_PIXEL_FORMAT_IYUV = HAL_PIXEL_FORMAT_YCbCr_422_P,
+ HAL_PIXEL_FORMAT_YUV9 = HAL_PIXEL_FORMAT_YCbCr_420_P,
+ HAL_PIXEL_FORMAT_YUY2 = HAL_PIXEL_FORMAT_YCbCr_422_I,
+ HAL_PIXEL_FORMAT_UYVY = HAL_PIXEL_FORMAT_CbYCrY_422_I,
+ HAL_PIXEL_FORMAT_NV12_ADRENO_TILED = HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED,
+ HAL_PIXEL_FORMAT_NV12 = HAL_PIXEL_FORMAT_YCbCr_420_SP,
+ HAL_PIXEL_FORMAT_NV21_ADRENO_TILED = HAL_PIXEL_FORMAT_YCrCb_420_SP_TILED,
+ HAL_PIXEL_FORMAT_NV61 = HAL_PIXEL_FORMAT_YCrCb_422_SP,
+ HAL_PIXEL_FORMAT_YV12 = HAL_PIXEL_FORMAT_YCrCb_422_P
+};
/**
* Transformation definitions