#ifndef __ASVL_OFFSCREEN_H__ #define __ASVL_OFFSCREEN_H__ #include "amcomdef.h" #ifdef __cplusplus extern "C" { #endif /*31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 */ /* R R R R R G G G G G G B B B B B */ #define ASVL_PAF_RGB16_B5G6R5 0x101 /* X R R R R R G G G G G B B B B B */ #define ASVL_PAF_RGB16_B5G5R5 0x102 /* X X X X R R R R G G G G B B B B */ #define ASVL_PAF_RGB16_B4G4R4 0x103 /* T R R R R R G G G G G B B B B B */ #define ASVL_PAF_RGB16_B5G5R5T 0x104 /* B B B B B G G G G G G R R R R R */ #define ASVL_PAF_RGB16_R5G6B5 0x105 /* X B B B B B G G G G G R R R R R */ #define ASVL_PAF_RGB16_R5G5B5 0x106 /* X X X X B B B B G G G G R R R R */ #define ASVL_PAF_RGB16_R4G4B4 0x107 /* R R R R R R R R G G G G G G G G B B B B B B B B */ #define ASVL_PAF_RGB24_B8G8R8 0x201 /* X X X X X X R R R R R R G G G G G G B B B B B B */ #define ASVL_PAF_RGB24_B6G6R6 0x202 /* X X X X X T R R R R R R G G G G G G B B B B B B */ #define ASVL_PAF_RGB24_B6G6R6T 0x203 /* B B B B B B B B G G G G G G G G R R R R R R R R */ #define ASVL_PAF_RGB24_R8G8B8 0x204 /* X X X X X X B B B B B B G G G G G G R R R R R R */ #define ASVL_PAF_RGB24_R6G6B6 0x205 /* X X X X X X X X R R R R R R R R G G G G G G G G B B B B B B B B */ #define ASVL_PAF_RGB32_B8G8R8 0x301 /* A A A A A A A A R R R R R R R R G G G G G G G G B B B B B B B B */ #define ASVL_PAF_RGB32_B8G8R8A8 0x302 /* X X X X X X X X B B B B B B B B G G G G G G G G R R R R R R R R */ #define ASVL_PAF_RGB32_R8G8B8 0x303 /* B B B B B B B B G G G G G G G G R R R R R R R R A A A A A A A A */ #define ASVL_PAF_RGB32_A8R8G8B8 0x304 /* A A A A A A A A B B B B B B B B G G G G G G G G R R R R R R R R */ #define ASVL_PAF_RGB32_R8G8B8A8 0x305 /*Y0, U0, V0*/ #define ASVL_PAF_YUV 0x401 /*Y0, V0, U0*/ #define ASVL_PAF_YVU 0x402 /*U0, V0, Y0*/ #define ASVL_PAF_UVY 0x403 /*V0, U0, Y0*/ #define ASVL_PAF_VUY 0x404 /*Y0, U0, Y1, V0*/ #define ASVL_PAF_YUYV 0x501 /*Y0, V0, Y1, U0*/ #define ASVL_PAF_YVYU 0x502 /*U0, Y0, V0, Y1*/ #define ASVL_PAF_UYVY 0x503 /*V0, Y0, U0, Y1*/ #define ASVL_PAF_VYUY 0x504 /*Y1, U0, Y0, V0*/ #define ASVL_PAF_YUYV2 0x505 /*Y1, V0, Y0, U0*/ #define ASVL_PAF_YVYU2 0x506 /*U0, Y1, V0, Y0*/ #define ASVL_PAF_UYVY2 0x507 /*V0, Y1, U0, Y0*/ #define ASVL_PAF_VYUY2 0x508 /*Y0, Y1, U0, V0*/ #define ASVL_PAF_YYUV 0x509 /*8 bit Y plane followed by 8 bit 2x2 subsampled U and V planes*/ #define ASVL_PAF_I420 0x601 /*8 bit Y plane followed by 8 bit 1x2 subsampled U and V planes*/ #define ASVL_PAF_I422V 0x602 /*8 bit Y plane followed by 8 bit 2x1 subsampled U and V planes*/ #define ASVL_PAF_I422H 0x603 /*8 bit Y plane followed by 8 bit U and V planes*/ #define ASVL_PAF_I444 0x604 /*8 bit Y plane followed by 8 bit 2x2 subsampled V and U planes*/ #define ASVL_PAF_YV12 0x605 /*8 bit Y plane followed by 8 bit 1x2 subsampled V and U planes*/ #define ASVL_PAF_YV16V 0x606 /*8 bit Y plane followed by 8 bit 2x1 subsampled V and U planes*/ #define ASVL_PAF_YV16H 0x607 /*8 bit Y plane followed by 8 bit V and U planes*/ #define ASVL_PAF_YV24 0x608 /*8 bit Y plane only*/ #define ASVL_PAF_GRAY 0x701 /*8 bit Y plane followed by 8 bit 2x2 subsampled UV planes*/ #define ASVL_PAF_NV12 0x801 /*8 bit Y plane followed by 8 bit 2x2 subsampled VU planes*/ #define ASVL_PAF_NV21 0x802 /*8 bit Y plane followed by 8 bit 2x1 subsampled UV planes*/ #define ASVL_PAF_LPI422H 0x803 /*8 bit Y plane followed by 8 bit 2x1 subsampled VU planes*/ #define ASVL_PAF_LPI422H2 0x804 /*8 bit Y plane followed by 8 bit 4x4 subsampled VU planes*/ #define ASVL_PAF_NV41 0x805 /*Negative UYVY, U0, Y0, V0, Y1*/ #define ASVL_PAF_NEG_UYVY 0x901 /*Negative I420, 8 bit Y plane followed by 8 bit 2x2 subsampled U and V planes*/ #define ASVL_PAF_NEG_I420 0x902 /*Mono UYVY, UV values are fixed, gray image in U0, Y0, V0, Y1*/ #define ASVL_PAF_MONO_UYVY 0xa01 /*Mono I420, UV values are fixed, 8 bit Y plane followed by 8 bit 2x2 subsampled U and V planes*/ #define ASVL_PAF_MONO_I420 0xa02 /*P8_YUYV, 8 pixels a group, Y0Y1Y2Y3Y4Y5Y6Y7U0U1U2U3V0V1V2V3*/ #define ASVL_PAF_P8_YUYV 0xb03 /*P16_YUYV, 16*16 pixels a group, Y0Y1Y2Y3...U0U1...V0V1...*/ #define ASVL_PAF_SP16UNIT 0xc01 #define ASVL_PAF_DEPTH_U16 0xc02 /*10 bits RGGB CFA raw data, each data has 2 bytes*/ #define ASVL_PAF_RAW10_RGGB_10B 0xd01 #define ASVL_PAF_RAW10_GRBG_10B 0xd02 #define ASVL_PAF_RAW10_GBRG_10B 0xd03 #define ASVL_PAF_RAW10_BGGR_10B 0xd04 #define ASVL_PAF_RAW12_RGGB_12B 0xd05 #define ASVL_PAF_RAW12_GRBG_12B 0xd06 #define ASVL_PAF_RAW12_GBRG_12B 0xd07 #define ASVL_PAF_RAW12_BGGR_12B 0xd08 #define ASVL_PAF_RAW10_RGGB_16B 0xd09 #define ASVL_PAF_RAW10_GRBG_16B 0xd0A #define ASVL_PAF_RAW10_GBRG_16B 0xd0B #define ASVL_PAF_RAW10_BGGR_16B 0xd0C /*10 bits gray raw data*/ #define ASVL_PAF_RAW10_GRAY_10B 0xe01 /*10 bits gray raw data, each data has 2 bytes*/ #define ASVL_PAF_RAW10_GRAY_16B 0xe81 /*Define the image format space*/ typedef struct __tag_ASVL_OFFSCREEN { MUInt32 u32PixelArrayFormat; MInt32 i32Width; MInt32 i32Height; MUInt8* ppu8Plane[4]; MInt32 pi32Pitch[4]; }ASVLOFFSCREEN, *LPASVLOFFSCREEN; /*Define the SDK Version infos. This is the template!!!*/ typedef struct __tag_ASVL_VERSION { MLong lCodebase; // Codebase version number MLong lMajor; // major version number MLong lMinor; // minor version number MLong lBuild; // Build version number, increasable only const MChar *Version; // version in string form const MChar *BuildDate; // latest build Date const MChar *CopyRight; // copyright }ASVL_VERSION; const ASVL_VERSION *ASVL_GetVersion(); #ifdef __cplusplus } #endif #endif /*__ASVL_OFFSCREEN_H__*/