1 /* 2 * Copyright (C) 2009 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 /*------------------------------------------------------------------------------ 18 19 Table of contents 20 21 1. Include headers 22 2. Module defines 23 3. Data types 24 4. Function prototypes 25 26 ------------------------------------------------------------------------------*/ 27 28 #ifndef H264SWDEC_INTRA_PREDICTION_H 29 #define H264SWDEC_INTRA_PREDICTION_H 30 31 /*------------------------------------------------------------------------------ 32 1. Include headers 33 ------------------------------------------------------------------------------*/ 34 35 #include "basetype.h" 36 #include "h264bsd_image.h" 37 #include "h264bsd_macroblock_layer.h" 38 39 /*------------------------------------------------------------------------------ 40 2. Module defines 41 ------------------------------------------------------------------------------*/ 42 43 /*------------------------------------------------------------------------------ 44 3. Data types 45 ------------------------------------------------------------------------------*/ 46 47 /*------------------------------------------------------------------------------ 48 4. Function prototypes 49 ------------------------------------------------------------------------------*/ 50 #ifndef H264DEC_OMXDL 51 u32 h264bsdIntraPrediction(mbStorage_t *pMb, macroblockLayer_t *mbLayer, 52 image_t *image, u32 mbNum, u32 constrainedIntraPred, u8 *data); 53 54 u32 h264bsdIntra4x4Prediction(mbStorage_t *pMb, u8 *data, 55 macroblockLayer_t *mbLayer, 56 u8 *above, u8 *left, u32 constrainedIntraPred); 57 u32 h264bsdIntra16x16Prediction(mbStorage_t *pMb, u8 *data, i32 residual[][16], 58 u8 *above, u8 *left, u32 constrainedIntraPred); 59 60 u32 h264bsdIntraChromaPrediction(mbStorage_t *pMb, u8 *data, i32 residual[][16], 61 u8 *above, u8 *left, u32 predMode, u32 constrainedIntraPred); 62 63 void h264bsdGetNeighbourPels(image_t *image, u8 *above, u8 *left, u32 mbNum); 64 65 #else 66 67 u32 h264bsdIntra4x4Prediction(mbStorage_t *pMb, u8 *data, 68 macroblockLayer_t *mbLayer, 69 u8 *pImage, u32 width, 70 u32 constrainedIntraPred, u32 block); 71 72 u32 h264bsdIntra16x16Prediction(mbStorage_t *pMb, u8 *data, u8 *pImage, 73 u32 width, u32 constrainedIntraPred); 74 75 u32 h264bsdIntraChromaPrediction(mbStorage_t *pMb, u8 *data, image_t *image, 76 u32 predMode, u32 constrainedIntraPred); 77 78 #endif 79 80 #endif /* #ifdef H264SWDEC_INTRA_PREDICTION_H */ 81 82