• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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