1 /* 2 * 3 * Copyright 2010 Rockchip Electronics S.LSI Co. LTD 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 /* 18 * File: 19 * vpu_global.h 20 * Description: 21 * Global struct definition in VPU module 22 * Author: 23 * Jian Huan 24 * Date: 25 * 2010-11-23 21:48:40 26 */ 27 #ifndef __VPU_GLOBAL_H_ 28 #define __VPU_GLOBAL_H_ 29 30 #include "vpu_macro.h" 31 #include "vpu_mem.h" 32 #include "vpu_api.h" 33 34 typedef struct { 35 RK_U32 StartCode; 36 RK_U32 SliceLength; 37 TIME_STAMP SliceTime; 38 RK_U32 SliceType; 39 RK_U32 SliceNum; 40 RK_U32 Res[2]; 41 }VPU_BITSTREAM; /* completely same as RK28 */ 42 43 typedef struct { 44 RK_U32 InputAddr[2]; 45 RK_U32 OutputAddr[2]; 46 RK_U32 InputWidth; 47 RK_U32 InputHeight; 48 RK_U32 OutputWidth; 49 RK_U32 OutputHeight; 50 RK_U32 ColorType; 51 RK_U32 ScaleEn; 52 RK_U32 RotateEn; 53 RK_U32 DitherEn; 54 RK_U32 DeblkEn; 55 RK_U32 DeinterlaceEn; 56 RK_U32 Res[5]; 57 }VPU_POSTPROCESSING; 58 59 typedef enum { 60 VPU_H264ENC_YUV420_PLANAR = 0, /* YYYY... UUUU... VVVV */ 61 VPU_H264ENC_YUV420_SEMIPLANAR = 1, /* YYYY... UVUVUV... */ 62 VPU_H264ENC_YUV422_INTERLEAVED_YUYV = 2, /* YUYVYUYV... */ 63 VPU_H264ENC_YUV422_INTERLEAVED_UYVY = 3, /* UYVYUYVY... */ 64 VPU_H264ENC_RGB565 = 4, /* 16-bit RGB */ 65 VPU_H264ENC_BGR565 = 5, /* 16-bit RGB */ 66 VPU_H264ENC_RGB555 = 6, /* 15-bit RGB */ 67 VPU_H264ENC_BGR555 = 7, /* 15-bit RGB */ 68 VPU_H264ENC_RGB444 = 8, /* 12-bit RGB */ 69 VPU_H264ENC_BGR444 = 9, /* 12-bit RGB */ 70 VPU_H264ENC_RGB888 = 10, /* 24-bit RGB */ 71 VPU_H264ENC_BGR888 = 11, /* 24-bit RGB */ 72 VPU_H264ENC_RGB101010 = 12, /* 30-bit RGB */ 73 VPU_H264ENC_BGR101010 = 13 /* 30-bit RGB */ 74 } H264EncPictureType; 75 76 #endif /* _VPU_GLOBAL_ */ 77