/* * Copyright (C) 2009 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /*------------------------------------------------------------------------------ Table of contents 1. Include headers 2. Module defines 3. Data types 4. Function prototypes ------------------------------------------------------------------------------*/ #ifndef H264SWDEC_RECONSTRUCT_H #define H264SWDEC_RECONSTRUCT_H /*------------------------------------------------------------------------------ 1. Include headers ------------------------------------------------------------------------------*/ #include "basetype.h" #include "h264bsd_macroblock_layer.h" #include "h264bsd_image.h" /*------------------------------------------------------------------------------ 2. Module defines ------------------------------------------------------------------------------*/ /*------------------------------------------------------------------------------ 3. Data types ------------------------------------------------------------------------------*/ /*------------------------------------------------------------------------------ 4. Function prototypes ------------------------------------------------------------------------------*/ #ifndef H264DEC_OMXDL void h264bsdPredictSamples( u8 *data, mv_t *mv, image_t *refPic, u32 xA, u32 yA, u32 partX, u32 partY, u32 partWidth, u32 partHeight); #else void h264bsdPredictSamples( u8 *data, mv_t *mv, image_t *refPic, u32 colAndRow,/* packaged data | column | row |*/ u32 part, /* packaged data |partX|partY|partWidth|partHeight|*/ u8 *pFill); #endif void h264bsdFillBlock( u8 * ref, u8 * fill, i32 x0, i32 y0, u32 width, u32 height, u32 blockWidth, u32 blockHeight, u32 fillScanLength); void h264bsdInterpolateChromaHor( u8 *pRef, u8 *predPartChroma, i32 x0, i32 y0, u32 width, u32 height, u32 xFrac, u32 chromaPartWidth, u32 chromaPartHeight); void h264bsdInterpolateChromaVer( u8 *pRef, u8 *predPartChroma, i32 x0, i32 y0, u32 width, u32 height, u32 yFrac, u32 chromaPartWidth, u32 chromaPartHeight); void h264bsdInterpolateChromaHorVer( u8 *ref, u8 *predPartChroma, i32 x0, i32 y0, u32 width, u32 height, u32 xFrac, u32 yFrac, u32 chromaPartWidth, u32 chromaPartHeight); void h264bsdInterpolateVerHalf( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight); void h264bsdInterpolateVerQuarter( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight, u32 verOffset); void h264bsdInterpolateHorHalf( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight); void h264bsdInterpolateHorQuarter( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight, u32 horOffset); void h264bsdInterpolateHorVerQuarter( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight, u32 horVerOffset); void h264bsdInterpolateMidHalf( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight); void h264bsdInterpolateMidVerQuarter( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight, u32 verOffset); void h264bsdInterpolateMidHorQuarter( u8 *ref, u8 *mb, i32 x0, i32 y0, u32 width, u32 height, u32 partWidth, u32 partHeight, u32 horOffset); void h264bsdFillRow7( u8 *ref, u8 *fill, i32 left, i32 center, i32 right); #endif /* #ifdef H264SWDEC_RECONSTRUCT_H */